Game system

ABSTRACT

Provided is a game system in which a plurality of game execution apparatuses, having internal structures different from each other, are capable of proceeding with a game while sharing characteristics of a character appearing in the game. A stationary game apparatus  100  obtains character data from a server apparatus  600 , and writes the character data to a memory card  300 . The stationary game apparatus  100  executes a stationary game software program stored in a DVD  500 , using the character data stored in the memory card  300 . A portable game apparatus  200  executes a portable game software program stored in a cartridge  400 , using the character data stored in the memory card  300.

TECHNICAL FIELD

The present invention relates to a computer game processing technology for proceeding with a game according to a computer program in which a game procedure and the like are described.

BACKGROUND ART

Recently, as the computer technology advances, stationary game apparatuses equipped with high-performance processing competence and portable game apparatuses that are compact and so are easy to be carried with have been developed and are now commercially available.

These game apparatuses operate according to a computer program in which a game procedure and the like are described, so as to proceed with a game. In a game proceeded by the game apparatuses, an imaginary object called “character” appears. The acts of the character are freely controllable by a user. The character has varieties of imaginary competence that can be both increased and decreased as a game proceeds. In addition, the form of the character can change in various ways as the game proceeds.

When the user suspends a game in progress, the game apparatus stores the characteristics of the character such as competence and form as well as the information indicating the time at which the game was suspended. When the user resumes the game, the game apparatus reads the stored characteristics of the character such as competence ahd form, as well as the information indicating the time at which the game was suspended, so as to proceed with the game by putting on the character having the competence and the form that are the same as before.

The stationary and portable game apparatuses are provided with computer programs via different media. For example, for stationary game apparatuses, a computer program is provided in a form stored in an optical disk and the like. Whereas for portable game apparatuses, a computer program is provided in a form stored in a dedicated cartridge. Therefore there is a problem that an optical disk storing a computer program for a stationary apparatus cannot be loaded to a portable apparatus, and conversely, a dedicated cartridge storing a computer program for a portable apparatus cannot be loaded to a stationary apparatus.

In addition, there are many specification differences between stationary game apparatuses and portable game apparatuses, such as in system architecture adopted, kinds and number of the processor installed, and display capacity of the screen. In other words, a computer program for a stationary apparatus is not designed to be executed in a portable apparatus as it is, and conversely, a computer program for a portable apparatus is not designed to be executed in a stationary apparatus as it is.

In non-patent reference 1, a dedicated adopter is used to load, to a stationary game apparatus, a dedicated cartridge storing a game software program for a portable game apparatus, so that the stationary game apparatus can execute the game software program. Accordingly, a user can enjoy the game produced for a portable game apparatus, even on a stationary game apparatus.

-   (non-patent reference 1)

http://www.nintendo.co.jp/ngc/acce/gbplayer

-   (non-patent reference 2)

Practical computer graphics (David F. Rogers, Nov. 15, 1996, Nikkan Kogyo Shinbun Co.)

-   (non-patent reference 3)

“To be a game programmer” IBM PC/AT compatible apparatus (Yamazaki Yoshinori, Feb. 1, 1998, CQ Publishing company)

(Problem to be Solved by the Invention)

However, according to the technology disclosed in the non-patent reference 1, while a stationary game apparatus is capable of executing a game software program produced for a portable game apparatus, it is not possible that one of stationary and portable game apparatuses proceeds with a game, then after.the game is suspended, the other of the game apparatuses resumes the game in exactly the same contents.

DISCLOSURE OF THE INVENTION

So as to deal with this problem, the present invention has an objective of providing a game system, a game execution apparatus, a game execution method, and a game execution program, by which the characteristics of a character appearing in a game can be shared between two game execution apparatuses that have a different internal structure from each other, under a condition where one of the game execution apparatuses proceeds with a game after another has proceeded with the same game.

So as to achieve the above objective, the present invention is a game system including: a memory card storing character data that indicates appearance, competence, etc. of a character appearing in game software of stationary/portable game apparatuses; a cartridge storing portable game software to be executed by the portable game apparatus; and a DVD (digital versatile disc) storing stationary game software to be executed by the stationary game apparatus.

A user loads the memory card and the DVD to the stationary game apparatus, and the stationary game apparatus reads the character data from the memory card and executes the stationary game software stored in the DVD in accordance with a user's instruction, thereby making the character appear in the game and proceeding with the game.

After this, the user loads the memory-card and the cartridge to the portable game apparatus, and the portable game apparatus reads the character data from the memory card and executes the portable game software stored in the cartridge in accordance with a user's instruction, thereby making the character appear in the game and proceeding with the game.

In the above way, the user is able to enjoy the same game with the same character, both on the stationary game apparatus and the portable game apparatus.

The present invention is a game system having a first game execution apparatus and a second game execution apparatus that have a different internal structure from each other, where the first game execution apparatus includes: a first program reading unit operable to read, from a first game recording medium, a first game program that indicates a procedure of a game; a first character reading unit operable to read, from a portable recording medium, character data that indicates a characteristic of a character that appears in the game; a first input unit operable to receive an inputting operation from a user; and a first game execution unit operable to proceed with the game according to the inputting operation received at the first input unit and the procedure indicated by the first game program, and make the character appear in the game in accordance with the character data read by the first character reading unit, and the second game execution apparatus includes: a second program reading unit operable to read, from a second game recording medium, a second game program that indicates the procedure of the game; a second character reading unit operable to read the character data from the portable recording medium; a second input unit operable to receive an inputting operation from the user; and a second game execution unit operable to proceed with the game according to the inputting operation received at the second input unit and the procedure indicated by the second game program, and make the character appear in the game in accordance with the character data read by the second character reading unit.

According to the above structure, the first game execution apparatus reads the first game program from the first game recording medium, reads the character data from the portable recording medium, and makes a character, whose characteristic is in accordance with the read character data, appear in a game. The second game execution apparatus reads the second game program from the second game recording medium, reads the character data fromtheportable recording medium, and makes a character, whose characteristic is in accordance with the read character data, appear in the game. Therefore the characteristics of the character are shared between the games proceeded respectively in the first game execution apparatus and the second game execution apparatus.

The present invention is a game execution apparatus that proceeds with a game according to a game program, having: a program reading unit operable to read, from a game recording medium, a game program that indicates a procedure of a game; a character reading unit operable to read, from a portable recording medium, character data that indicates a characteristic of a character that appears in the game; an input unit operable to receive an inputting operation from a user; and a game execution unit operable to proceed with the game according to the inputting operation and the procedure, and make the character appear in the game in accordance with the character data.

According to the above structure, character data indicating a characteristic of a character is stored in a portable recording medium that is different from a game recording medium storing a game program indicating a procedure of a game. Therefore a game execution apparatus with any kind of internal structure is able to read the character data from the portable recording medium, thereby making a character, which has the characteristic indicated by the read character data, appear in the game.

Here, the game execution apparatus may further have a request unit operable to request the character data from a server apparatus; an obtaining unit operable to obtain the character data from the server apparatus via a network; and a writing unit operable to write the obtained character data to the portable recording medium.

According to the above structure, it becomes possible to obtain character data from the server apparatus and to write the obtained character data to the portable recording medium. Therefore the game execution apparatus is able to obtain the character data, without fail.

Here, the game execution apparatus may further have an authentication unit operable to check authenticity of the portable recording medium, where the character reading unit reads the character data when the authenticity has been ensured.

According to the above structure, the game execution apparatus checks authenticity of the portable recording medium, and only when the authenticity has been ensured, character data is read from the portable recording medium. This prevents use of unauthorized portable recording medium.

Here, the game execution apparatus may have a structure in which the game recording medium further stores therein permission information that indicates whether change is permissible on the character's characteristic, the character reading unit further reads the permission information from the game recording medium, and the game execution unit, when the read permission information indicates affirmatively, changes the character's characteristic as the game proceeds, and prohibits the character's characteristic from being changed when the read permission information indicates negatively.

According to the above structure, when the permission information read from the game recording medium indicates affirmatively, the game execution apparatus makes the character, whose characteristic is permitted to change, appear in the game. On the contrary, when the permission information indicates negatively, the game execution apparatus prohibits the character's characteristic from changed. Therefore, the user enjoys different changes in character's characteristic on different game execution apparatuses.

Here, the game execution apparatus may further have: a character writing unit operable to, when the game execution unit changes the character's characteristic, overwrite the character data in the portable recording medium with after-change character data that indicates a characteristic of the character after changed, where the character reading unit further reads the after-change character data from the portable recording medium, and the game execution unit changes the character's characteristic as the game proceeds, in accordance with the read after-change character data.

According to the above structure, the game execution apparatus is able to overwrite the portable recording medium with after-change character data that indicates a characteristic of a character after changed, read the after-change character data from the portable recording medium, and make a character whose characteristic is indicated by the after-change character data, appear in the game. Therefore the user is able to make the character whose characteristic has been changed appear in a game, in a case when the game was suspended and was resumed thereafter from the suspension point.

In addition, the present invention is a portable recording medium having: a storage unit that stores therein character data that indicates a characteristic of a character that appears in a game; an authentication unit operable to check authenticity of a game execution apparatus; and an output unit operable to, when the authenticity has been ensured, read the character data from the storage unit and output the read character data to the game execution apparatus.

According to the above structure, the portable recording medium checks authenticity of a game execution apparatus to which the portable recording medium is to be loaded, and the character data stored in the portable recording medium is outputted to the game execution apparatus only when the authenticity has been ensured. This prevents execution of a game by an unauthorized game execution apparatus.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a structure diagram showing the structure of a game system 10.

FIG. 2 is a block diagram showing the structure of a server apparatus 600.

FIG. 3 is a data structure diagram showing the data structure of a game sales information table 641.

FIG. 4 is a data structure diagram showing the data structure of a user purchase information table 631.

FIG. 5 illustrates the structure of a program and data stored in a DVD 500.

FIG. 6 shows one example of the screen displayed on a monitor 120, in each game step in each game stage.

FIG. 7 shows one example of the screen displayed on a monitor 120, in each game step in each game stage.

FIG. 8 shows one example of the screen displayed on a monitor 120, in each game step in each game stage.

FIG. 9 is a flowchart showing the content of a stationary main program, which continues to FIG. 10.

FIG. 10 is a flowchart showing the content of the stationary main program, which is a continuation from FIG. 9.

FIG. 11 is a flowchart showing the content of a stationary frame processing program, which continues to FIG. 12.

FIG. 12 is a flowchart showing the content of the stationary frame processing program, which is a continuation from FIG. 11.

FIG. 13 is a flowchart showing the content of a fighting program, which continues to FIG. 14.

FIG. 14 is a flowchart showing the content of the fighting program, which is a continuation from FIG. 13.

FIG. 15 is a flowchart showing the content of a stationary image generating program, which continues to FIG. 16.

FIG. 16 is a flowchart showing the content of the stationary image generating program, which is a continuation from FIG. 15.

FIG. 17 is a block diagram showing the structure of a stationary game apparatus 100.

FIG. 18 shows one example of information stored in a main storage unit 110.

FIG. 19 shows one example of information stored in a graphics storage unit 114.

FIG. 20 shows the content of each register provided in the register unit 109.

FIG. 21 shows kinds of instructions stored in a register R0 of the register unit 109.

FIG. 22 shows one example of menu screen 160 generated by the main control unit 108.

FIG. 23 is a block diagram showing the structure of a memory card 300.

FIG. 24 is a block diagram showing the structure of a cartridge 400.

FIG. 25 is a flowchart showing the content of a portable main program, which continues to FIG. 26.

FIG. 26 is a flowchart showing the content of the portable main program, which is a continuation from FIG. 25.

FIG. 27 is a flowchart showing the content of a portable frame processing program, which continues to FIG. 28.

FIG. 28 is a flowchart showing the content of the portable frame processing program, which is a continuation from FIG. 27.

FIG. 29 is a flowchart showing the content of a portable image generating program.

FIG. 30 is a block diagram showing the structure of a portable game apparatus 200.

FIG. 31 shows one example of information stored in a main storage unit 210.

FIG. 32 is a block. diagram showing the structure of a convenience-store terminal 700.

FIG. 33 is a flowchart showing the operation performed by the stationary game apparatus 100.

FIG. 34 is a flowchart showing the game operation performed by the stationary game apparatus 100.

BEST MODE FOR CARRYING OUT THE INVENTION 1. First Embodiment

The following explains a game system 10, as one embodiment relating to the present invention.

1.1 Structure of Game System 10

As FIG. 1 shows, the game system 10 is made up of a stationary game apparatus 100, a portable game apparatus 200, a memory card 300, a cartridge 400, a DVD 500, a server apparatus 600, and a convenience-store terminal 700.

The stationary game apparatus 100 is connected to the server apparatus 600, via the Internet 20. A user loads the DVD 500 to the stationary game apparatus 100, the DVD 500 storing therein a game software program to be executed by the stationary game apparatus 100. In addition, the user loads the memory card 300 to the stationary game apparatus 100. The stationary game apparatus 100 obtains character data indicating appearance, competence, etc. of a character appearing in the stationary game software program, from the server apparatus 600 via the Internet 20, and writes the obtained character data to the memory card 300.

Next, according to a user operation, the stationary game apparatus 100 executes the stationary game software program stored in the DVD 500 with use of the character data written in the memory card 300.

In addition, the user loads the cartridge 400 to the portable game apparatus 200, the cartridge 400 storing the portable game soft ware program to be executed by the portable game apparatus 200. Here, the game by means of the portable game software program stored in the cartridge 400 is of the same content as the game by means of the stationary game software stored in the DVD 500. The user also loads the memory card 300 to which the character data has been written, to the portable game apparatus 200.

Next, according to a user operation, the portable game apparatus 200 executes the portable game software program stored in the cartridge 400 with use of the character data written in the memory card 300.

In this way, the user is able to perform the same game in which the same character appears, in both of the stationary game apparatus 100 and the portable game apparatus 200.

Here, a different structure is possible in which the memory card 300 is loaded to the portable game apparatus 200, where the portable game apparatus 200 and the stationary game apparatus 100 are connected to each other by a cable 30. Here, the portable game apparatus 200 obtains character data from the server apparatus 600 via the Internet 20 and via the stationary game apparatus 100, and writes the obtained character data into the memory card 300.

Furthermore, another different structure is possible in which the memory card 300 is loaded to a convenience-store terminal 700, where the convenience-store terminal 700 is connected to the server apparatus 600 via the Internet 700. The convenience-store terminal 700 obtains character data from the server apparatus 600 via the Internet 20, and writes the obtained character data to the memory card 300.

1.2 Structure of Server Apparatus 600

As FIG. 2 shows, the server apparatus 600 is comprised of an information storage unit 601, a control unit 602, an input unit 603, a display unit 604, a communication unit 605, and an authentication unit 606.

The server apparatus 600 is specifically a computer system comprised of a microprocessor, a ROM, a RAM, a hard disk unit, a LAN connection unit, a display unit, a keyboard, a mouse, and the like. The RAM or the hard disk unit stores a computer program therein. The server apparatus 600 achieves a part of its function, by the microprocessor operating according to the computer program.

(1) Information Storage Unit 601

As FIG. 2 shows, the information storage unit 601 has a game information table 621, a user purchase information table 631, and a game sales information table 641.

(Game Information Table 621)

As FIG. 2 shows, the game information table 621 includes a plurality of sets of game information. Each set of game information is comprised of two game identifiers, one piece of character data, and two secret keys.

Each of the two game identifiers is identification information for identifying a game software program. Between the two game identifiers, the first game identifier identifies a game software program operated by a stationary game apparatus, whereas the second game identifier identifies a game software program operated by a portable game apparatus. In addition, the first game identifier corresponds to the first secret key of the two secret keys, and the second game identifier corresponds to the second secret key.

Each game identifier is formed by a combination of type information and identification number. Type information indicates whether the game software program is operated by a stationary game apparatus or by a portable game apparatus, and takes one of the values “A” and “B”. Here, “A” identifies a game software program operated by a portable game apparatus, and “B” identifies a game software program operated by a stationary game apparatus. The identification number is a number unique to each game, and so a same identification number is assigned to a game by means of a game soft program operated by a stationary game apparatus and a game by means of a game soft program operated by a portable game apparatus, if the mentioned games are identical.

For example, the game identifier 622 “A001” is formed by a combination of type information “A” and identification number “001”, and the game identifier 625 “B001” is formed by a combination of type information “B” and identification number “001”. Therefore the game identifier 622 “A001” and the game identifier 625 “B001” are respectively a game software program operated by a portable game apparatus, and a game software program operated by a stationary game apparatus. In addition, the games by means of these two game software programs are identical to each other.

The character data are information showing external form and competence of a character appearing in a game.

To be more specific, the character data 623 is made up of a character ID, tribe, sex, occupation, height, weight, hairstyle, shape of eyes, shape of ears, lifepower, fighting power, and fund. These items will be detailed later.

If a game by means of a game software program operated by a portable game apparatus is identical to a game by means of a game software program operated by a stationary game apparatus, a character will be shared in the game system 10. In other words, the external forms, competence, etc. of both the characters respectively appearing in these games are identified by one piece of character data. Therefore two game identifiers that have an identical identification number are associated with one piece of character data. For example, the game identifier 622 “A001” and the game identifier 625 “B001” are both associated with the character data 623.

One secret key is generated for each game software program.

(2) Game Sales Information Table 641

As FIG. 3 shows, the game sales information table 641 includes a plurality of sets of game sales information. Each set of game sales information includes two game identifiers, one game title, and two prices.

As already described, two game identifiers are each identification information for identifying a game software program. Between the two game identifiers, the first game identifier identifies a game software program operated by a stationary game apparatus, whereas the second game identifier identifies a game software program operated by a portable game apparatus. In addition, the first game identifier is associated with the first price between the two prices, and the second game identifier is associated with the second price.

The game title is a title identifying a corresponding game. When the game by means of a game software program operated by a portable game apparatus is identical to a game by means of a game software program operated by a stationary game apparatus, the game titles for these two game software programs are identical to each other, which means that the two game identifiers correspond to one game title.

Each of the two prices shows a sales price of a game software program identified by a corresponding game identifier.

(3) User Purchase Information Table 631

As FIG. 4 shows, the user purchase information table 631 includes a plurality of sets of purchase information. Each set of purchase information is made up of either: one user. ID, one game identifier, and one purchase date; or of one user ID, two game identifiers, and two purchase dates.

When the user purchases one of a game software program operated by a portable game apparatus and a game software program operated by a stationary game apparatus, the purchase information will be made up of one user ID, one game identifier, and one purchase date. When the user purchases both of the game software programs, the purchase information will be made up of one user ID, two game identifiers, and two purchase dates.

The user ID is identification information for identifying a user that has purchased the game software program.

As described above, the game identifier identifies either a game software program operated by a portable game apparatus or a game software apparatus operated by a stationary game apparatus, the game software programs having been purchased by this user.

The purchase date indicates a date at which the user purchased a corresponding game software program.

(4) Authentication Unit 606

The authentication unit 606 performs mutual apparatus authentication with an external apparatus using challenge-response method by being controlled by the control unit 602, prior to communication start between the control unit 602 and the external apparatus via the communication unit 605. Here, explanation on challenge-response method is omitted because it is publicly known.

The authentication unit 606 outputs the result of apparatus authentication to the control unit 602. When the mutual authentication has failed, the authentication unit 606 prohibits the control unit 602 from communicating with the external apparatus, and when the mutual authentication has succeeded, the authentication unit 606 permits the control unit 602 to communicate with the external apparatus.

In this example, the external apparatus is the memory card 300.

(5) Communication Unit 605

The communication unit 605 is connected to the stationary game apparatus 100 and to the convenience-store terminal 700, via the Internet 20.

The communication unit 605, via the Internet 20, transmits/receives information to/from the stationary game apparatus 100 and the authentication unit 606, and to/from the stationary game apparatus 100 and the control unit 602.

In addition, via the Internet 20, the communication unit 605 transmits/receives information to/from the convenience-store terminal 700 and the authentication unit 606, and to/from the stationary game apparatus 100 and the control unit 602.

(6) Control Unit 602

Transmission of character data to stationary game apparatus 100)

The control unit 602 receives a user ID, a game identifier, and signature data, from the stationary game apparatus 100 via the Internet 20 and via the communication unit 605.

As described above, the user ID is identification information for identifying a user, and the game identifier is identification for identifying a game software program. In addition, the signature data is generated by performing a digital signature SIG on the game identifier and the user ID, using a public key corresponding to the game software program, as detailed later.

Here, one example of digital signature SIG is a digital signature algorithm whose security is assured based on discrete logarithm problem on an elliptic curve. This is a publicly known technology and so is not described here.

Next, the control unit 602 reads a secret key corresponding to the received game identifier from the game information table 621 that the information storage unit 601 owns.

Next, the control unit 602 performs digital signature verification “VRFY” on the game identifier, the user ID, and the signature data, thereby obtaining a verification result. Here, the digital signature verification “VRFY” is a signature verification algorithm by way of the ElGamal signature method on the elliptic curve.

Next, the control unit 602 transmits the verification result obtained by the digital signature verification “VRFY” to the stationary game apparatus 100 via the communication unit 605 and the Internet 20. When the verification result indicates a failure, the control unit 602 does not perform the processing thereafter.

When the verification result indicates a success, the control unit 602 receives a communication instruction from the stationary game apparatus 100 via the Internet 20 and the communication unit 605, and furthermore controls the authentication unit 606 to perform mutual apparatus authentication with the memory card 300 loaded to the stationary game apparatus 100.

The control unit 602 receives an authentication result from the authentication unit 606, and transmits the received authentication result to the stationary game apparatus 100 via the communication unit 605 and the Internet 20. Here, when the authentication result indicates a failure, the control unit 602 does not perform the processing thereafter.

On the other hand, when the authentication result indicates a success, the control unit 602 searches the user purchase information table 631 for the received user ID, and when the received user ID cannot be found in the user purchase information table 631, the control unit 602 transmits the search result showing such to the stationary game apparatus 100 via the communication unit 605 and the Internet 20.

When the received user ID is found in the user purchase information. table 631, the control unit 602 reads the character data corresponding to the received game identifier from the game information table 621, and transmits the read character data to the stationary game apparatus 100 via the communication unit 605 and the Internet 20.

Next, the control unit 602 receives completion information indicating completion of writing of the character data to the memory card 300, from the stationary game apparatus 100 via the Internet 20 and the communication unit 605. Upon receiving the completion information, the control unit 602 performs billing processing directed to the user that the user ID identifies.

(Transmission of character data to the convenience-store terminal 700)

The control unit 602 receives an authentication instruction that indicates request for mutual authentication with the memory card 300, from the convenience-store terminal 700 via the Internet 20 and the communication unit 605.

Upon receiving the authentication instruction, the control unit 602 controls the authentication unit 606 to perform mutual apparatus authentication with the memory card 300. Next, the control unit 602 receives an authentication result from the authentication unit 606, and transmits the authentication result to the convenience-store terminal 700 via the communication unit 605 and the Internet 20.

When the authentication result indicates a failure, the control unit 602 does not perform the processing thereafter.

When the authentication result indicates a success, the control unit 602 reads all the sets of game sales information from the game sales information table 641, and transmits the read sets of game sales information to the convenience-store terminal 700 via the communication unit 605 and the Internet 20.

Next, the control unit 602 receives a game identifier from the convenience-store terminal 700 via the Internet 20 and the communication unit 605. Upon receiving the game identifier, the control unit 602 reads character data corresponding to the game identifier from the game information table 621, and transmits the read character data to the convenience-store terminal 700 via the communication unit 605 and the Internet 20.

(7) Input Unit 603 and Display Unit 604

The input unit 603 receives input of either data or an instruction from the operator of the server apparatus 600, and outputs either data or an instruction having been received, to the control unit 602.

The display unit 604 displays a variety of information by being controlled by the control unit 602.

1.3 DVD 500

The DVD 500 is a portable optical disk medium that can record therein a large amount of data.

For example, the DVD 500 prestores a stationary main program 511, a stationary character processing program 551, and a stationary development item table 561. These are either a computer program or data for the computer, used at the stationary game apparatus 100, and constitute one game software program.

(1) Explanation About Game

First, the game by way of the game software program is explained, prior to explanation about the stationary game program 511, the stationary character processing program 551, and the stationary development item table 561.

The game is constituted by “n” game stages 1, 2, . . . , n. The game will proceed in the order of the game stages 1, 2, . . . , n. Each game stage is constituted by “m” game steps 1, 2, . . . , m, and the game will proceed in the order of the game steps 1, 2, . . . , m.

Within each game step, the maximum time of game play allowed for a user is determined as “MAX”. If the game play time exceeds the maximum value “MAX” in a step, the game step will be ended normally, and the operation proceeds to a next game step.

In a game, a character who is an operation target of a player of the stationary game apparatus 100 (i.e. a user), a background expressing each scene of the game, an attacker who will attack the character, and other objects, will appear.

FIGS. 6-8 show an example of screen in the monitor 120 displayed. in each game step in each game stage.

The character 572, the background 573, and the other objects are displayed at the screen 571 shown in FIG. 6. The character 575, the background 576, and other objects are displayed at the screen 574 shown in FIG. 7. The character 578, the background 579, the attacker 580, and other objects are displayed at the screen 577 shown in FIG. 8.

The character is given tribe, sex, and occupation, which constitute personality characteristics of the character. In addition, height, weight, hair style, shape of eyes, shape of ears are given to the character as form characteristics. In addition, lifepower, fighting power, and fund are given to the character as power characteristics.

Here, tribe, sex, occupation, height, weight, hair style, shape of eyes, shape of ears are what they mean literally, and so whose explanation is not given.

Tribe, sex, occupation, hair style, shape of eyes, and shape of ears are characteristics that do not change. On the other hand, height, weight, life power, fighting power, and fund will change as the game proceeds.

The life power indicates power of the character to live. When it takes greater value than 0, the character is alive, and when it takes the value of 0, the character is dead. For example, when the character is given an inevitable attack from an attacker, the value of the life power decreases. On the other hand, when each game stage is ended normally, the value of the life power increases.

The fighting power indicates power of the character to attack the attacker. When it takes greater value than 0, the character is able to attack the attacker. When it takes.the value of 0, the character is unable to attack the attacker. In addition, when each game stage is ended normally, the value of the fighting power increases.

The fund indicates the value of currency owned by the character, which can be used to purchase other goods. When the character succeeded in effectively attacking the attacker, or when each game stage has ended normally, the value of the fund increases.

The height and weight change as the game proceeds, as mentioned above. When each game stage is ended normally, the value of height and weight respectively increases by a predetermined value. In other words, the character grows up in terms of form.

Here, the character, the attacker, and the background exist imaginarily in the three-dimension game space. The game space is expressed in orthogonal coordinates of X-coordinate, Y-coordinate, and Z-coordinate.

A part of the game space is clipped so as to generate a display space. A character existing in the display space is thrown in a frame by perspective projection, to form an image.

(2) Stationary Game Program 511

As FIG. 5 shows, the stationary game program 511 is comprised of a related information unit 521, a program unit 531, and an object data unit 541.

(Related Information Unit 521)

The related information unit 521 is comprised of a game section 522, a game identifier BID 523, a public key BPK 524, a game title 525, and audio information not drawn in this drawing.

The game section 522 indicates that the stationary game program 511 is a game program used in a stationary game apparatus.

The game identifier BID 523 is identification information for identifying the stationary game program 511.

The public key BPK 524 is generated using a secret key and by the public-key generation method. Here, the secret key corresponds to the game identifier found in the game information table 621 that the information storage unit 601 of the server apparatus 600 owns, which is identical to the game identifier BID 523. Here, one example of the public-key generation method is a public-key generation algorithm by means of ElGama1 signature method on an elliptic curve.

The game title is a title used for identifying a game realized by the stationary game program 511.

The audio information is coded data of the character's voice, music, and sound effect.

(Program Unit 531)

The program unit 531 includes a computer program for a stationary game (hereinafter called “stationary main program”), a computer program for processing one frame of image (hereinafter called “stationary frame processing program”) and a computer program for processing fighting scenes (hereinafter called “fighting-scene program”). Each computer program is comprised of a plurality of instructions in various machine language formats. The machine language formats are a format to be decoded and executed by a main control unit 108 of the stationary game apparatus 100 (the main control unit 108 will be described in detail later). The stationary main program, the stationary frame processing program, and the fighting-scene program are used by the main control unit 108.

The stationary frame processing program is called by the stationary main program for use. In addition, the fighting-scene program is called by the stationary frame processing program for use.

The following describes the content of each computer program. For easier understanding of the. content of each compute reprogram, the following description uses flowcharts to represent computer programs, instead of representation using instructions in machine language format.

(a) Stationary Main Program

The following describes the stationary main program with use of the flowcharts of FIGS. 9-10.

The stationary main program reads the resumption stage No. 335 and the resumption step No. 336, and writes the read resumption stage No. and resumption step No. to the main storage unit 110. Here, the resumption stage No. and the resumption step No. are respectively numbers indicating the game stage and the game step, from which the game should be resumed. When each of the resumption stage No. and the resumption step No. is “1”, the game will proceed from the first game step of the first game stage. When the resumption stage No. and the resumption step No. are respectively “5” and “3” for example, the game will proceed from the third game step of the fifth game stage. In this way, the resumption stage No. and the resumption step No. are information for controlling the position to restart the game proceeding (Step S101).

Next, the stationary main program reads the character data 321 from the memory card 300, and writes the read character data to the main storage unit 110 (Step S102).

Next, the stationary main program extracts the height and the weight from the character data in the main storage unit 110, and updates the character object data stored in the main storage unit 110, so as to change the form of the character based on the ratio of the height to the weight. Specifically, when the height is large and the weight is heavy, or when the height is small and the weight is light, the updating is performed so that the character will have a standard form. If the height is large and the weight is light, the updating is performed so that the character will have a slender form. If the height is small and the weight is heavy, the updating is performed so that the character will have a fat form. As detailed later, character object data is three-dimensional data showing a three-dimensional form of a character (Step S103).

Next, in Step S105-Step S124, the following Step S106-Step S123 are repeated until the game stage shown by “n” is completed by starting with the game stage shown by the resumption stage No.

(i) In Step S106-Step S113, the following step S107-Step S112 are repeated until the game step shown by “m” is completed by starting with the game step shown by the resumption step No.

It is judged whether the life power written in the main storage unit 110 shows “0” (Step S107).

When the life power is judged.to show “0” (Step S107), a screen showing game ending is generated, and the generated screen is written to the frame buffer 106 as a frame image (Step S108). Then a screen display instruction indicating to transfer the frame image in the frame buffer 106 to the VRAM 115 is written to the register R0 151 of the register unit 109. Then a control signal indicating that the writing of the instruction to the register unit 109 has been completed is outputted to the graphics control unit 113 (Step S109). Then the game ends.

When the life power is judged not to show “0” (Step S107), it is judged whether the elapsed time in the game step exceeds the maximum value MAX (Step S110), and when the elapsed time is judged to exceed the maximum value MAX (Step S110), the game step is ended, and the operation goes on to the next game step.

When the elapsed time is judged not to exceed the maximum value MAX (Step S110), the elapsed time is counted (Step S111), and the stationary frame processing program is called so as to move the control to the stationary frame processing program, thereby performing processing for one frame image (Step S112). After the processing for one frame image has ended, the operation returns to Step S110, so as to repeat the processing.

(ii) Next, it is judged whether the height flag written in the main storage unit 110 is “ON” or “OFF” (Step S114). If the height flag is judged to be “OFF”. (Step S114), the control is moved to Step S117. If the height flag is judged to be “ON” (Step S114), the value “10” is added to the height written in the main storage unit 110 (Step S115), and the height after 10 is added is written to the high-order bit of the register R4 155 of the register unit 109 (Step S116).

(iii) Next, it is judged whether the weight flag written in the main storage unit 110 is “ON” or “OFF” (Step S117). If the weight flag is judged to be “OFF” (Step S117), 15 the control is moved to Step S120. If the weight flag is judged.to be “ON” (Step S117), the value “0.5” is added to the weight written in the main storage unit 110 (Step S118), and the weight after 0.5 is added is written to the low-order bit of the register R4 155 of the register unit 109 (Step S119).

(iv) Next, it is judged whether the life-power flag written in the main storage unit 110 is “ON” or “OFF” (Step S120). If the life-power flag is judged to be “OFF” (Step S120), the control is movedto Step S122. If the life-power flag is judged to be “ON” (Step S120), the value “10” is added to the life power written in the main storage unit 110 (Step S121).

(v) Next, it is judged whether the fighting-power flag written in the main storage unit 110 is “ON” or “OFF” (Step S122). If the fighting-power flag is judged to be “ON” (Step S122), the value “10” is added to the fighting power written in the main storage unit 110 (Step S123). If the fighting-power flag is judged to be “OFF” (Step S122), nothing is performed.

(b) Stationary Frame Processing Program

The following describes the stationary frame processing program with use of the flowcharts shown in FIGS. 11-12.

The stationary frame processing program calculates the coordinates value (three-dimensional coordinates) of the current attack object in the game space. Here, the coordinates value of an attack object is a point of game space at which the center of the form of the attach object exists (e.g. the center of the head when an object is in a form of human being). Note that this also applies to the coordinates value of a character object and to the coordinates value of a background object.

Specifically, the coordinates value of an attack object is calculated as follows.

The initial value of the coordinates value of an attack object is described within the stationary frame processing program. Initially, this initial value is considered as the coordinates value of the attack object.

Later, three random numbers (each corresponding to X-coordinate value, Y-coordinate value, and Z-coordinate value) are generated, and a new coordinates value for the attack object is calculated by adding the three random numbers to the corresponding coordinates value of the attack object (i.e. X-coordinate value, Y-coordinate value, and Z-coordinate value) (Step S131).

Next, the calculated coordinates value of the attack object is written to the register R3 154 of the register unit 109 (Step S132).

Next, operation instruction information corresponding to the button on the operation controller 122 is received from the operation controller 122 via the controller control unit 101, and a type of the received operation instruction information is judged (Step S133).

When received operation instruction information corresponds to up-button, down-button, left-button, and right-button (Step S133), then Y-coordinate value of the character object is incremented by 1 (Step S134), decremented by 1 (Step S135), X-coordinate value is decremented by 1 (Step S136), and X-coordinate value is incremented by 1 (Step S137), respectively.

Here, the initial value of the coordinates value of the character object is described in the stationary frame processing program, just as the initial value of the coordinates value of the attack object. Initially, this initial value is set as the coordinates value of the character object.

When received operation instruction information corresponds to STOP button (Step S133), the control is moved on to Step S145.

When received operation instruction information corresponds to DECISION button (Step S133), nothing is performed and the control is moved to Step S139.

When received operation instruction information corresponds to one of the other buttons (Step S133), the processing corresponding to the button is performed (Step S138), and then the stationary frame processing program is ended.

When operation instruction information is not received (Step S133), nothing is performed and the control is moved to Step S139.

Next, the fighting program is called thereby moving the control to the fighting program, so as to perform processing at fighting (Step S139).

When processing at fighting is finished, the coordinates value of the character object is written to the register R1 152 of the register unit 109 (Step S140).

Next, the coordinates value of the background object is calculated (Step S141), and the calculated coordinates value for the background is written to the register R2 153 of the register unit 109 (Step S142).

Next, a generating instruction for the background object is called. Specifically, a generating instruction indicating generation of the background object is written to the register R0 151 of the register unit 109, and a control signal indicating that the instruction has been written to the register unit 109 is outputted to the graphics control unit 113 (Step S143).

Next, a generating instruction for an attack object is called. Specifically, a generating instruction indicating generation of the attack object is written to the register R0 151 of the register unit 109, and a control signal indicating that the instruction has been written to the register unit 109 is outputted to the graphics control unit 113 (Step S144).

Next, a generating instruction for a character object is called. Specifically, a generating instruction indicating generation of the character object is written to the register R0 151 of the register unit 109, and a control signal indicating that the instruction has been written to the register unit 109 is outputted to the graphics control unit 113 (Step S151).

Next, a screen display instruction, which indicates to transfer a frame image of the frame buffer 106 to the VRAM 115, is written to the register R0 151 of the register unit 109, and a control signal indicating that the instruction has been written to the register unit 109 is outputted to the graphics control unit 113 (Step S152), and the processing for the stationary frame processing program is ended.

When received operation instruction information corresponds to STOP button (Step S133), a SAVE screen is generated which includes a message for confirming the user whether 1) character data, a resumption stage No., and a resumption step No. should be saved in the memory card 300 before ending of the game, or 2) the game can be ended without saving the above information. Then the generated SAVE screen is written to the frame buffer 106 as a frame image (Step S145). Next, a screen display instruction, which indicates to transfer the frame image of the frame buffer 106 to the VRAM 115, is written to the register R0 151 of the register unit 109, and a control signal indicating that the instruction has been written to the register unit 109 is outputted to the graphics control unit 113 (Step S146)

Next, operation instruction information corresponding to a button on the operation controller 122 is received from the operation controller 122 via the controller control unit 101. Here, the operation instruction information indicates either to perform the save or not. Next, a type of the received operation instruction information is judged (Step S147).

When the received operation instruction information indicates not to perform the save (Step S147), the game processing is ended there.

When the received operation instruction information indicates to perform the save (Step S147), height, weight, life power, fighting power, fund, resumption stage No. and resumption step No. are read from the main storage unit 110 (Step S148), and the character data 321 in the information storage unit 301 of the memory card 300 is overwritten with the read height, weight, life power, fighting power, and fund. In addition, the resumption stage No. 335 and the resumption step No. 335 are overwritten with the read resumption stage No. and the resumption step No. (Step S149). Next, the processing of the stationary frame processing program is ended.

(c) Fighting Program

The following describes the fighting program with use of the flowcharts in FIGS. 13-14.

The fighting program judges whether the coordinates value for the character object exists within an attack range whose center is the coordinates value of the attack object. Here, the attack range is a spacious range in the game space in which the effect of the attack weapon that the attack object owns can reach.

The fighting program further judges whether the coordinates value for the attack object exists within a counter-attack range whose center is the coordinates value of the character object. Here, the counter-attack range is a spacious range in the game space in which the effect of the counter-attack weapon that the character object owns can reach

Furthermore, the fighting program judges whether there is an attack by the attack object, and judges whether there is a counter attack by the character object.

According to a combination of four judgment results, the processing content of the fighting program changes.

(i) Within attack range and within counter-attack range

Within the attack range (Step S171) and within the counter-attack range (Step S172), when there is no attack (Step S173) and there is no counter attack (Step S174), the fighting program is ended without performing anything.

Within the attack range (Step S171) and within the counter-attack range (Step S172), when there is no attack (Step S173) but there is a counter attack (Step S174), 1 is added to the fund stored in the main storage unit 110 (Step S175), and 1 is subtracted by the fighting power stored in the main storage unit 110 (Step S176), and then the fighting program is ended.

Within the attack range (Step S171) and within the counter-attack range (Step S172), when there is an attack (Step S173) and there is no counter attack (Step S177), 1 is subtracted from the life power stored in themain storage unit 110 (Step S178), and then the fighting program is ended.

Within the attack range (Step S171) and within the counter-attack range (Step S172), when there is an attack (Step S173) and there is a counter attack (Step S177), 1 is subtracted from the fighting power (Step S179), and then the fighting program is ended.

(ii) Within attack range and out of counter-attack range

Within the attack range (Step S171) and out of the counter-attack range (Step S172), when there is no attack (Step S180) and there is no counter attack (Step S181), the fighting program is ended without performing anything.

Within the attack range (Step S171) and out of the counter-attack range (Step S172), when there is no attack (Step S180) and there is a counter attack (Step S181), then 1 is subtracted from the fighting power (Step S182) and then the fighting program is ended.

Within the attack range (Step S171) and out of the counter-attack range (Step S172), when there is an attack (Step S180) and there is no counter attack (Step S183), 1 is subtracted from the life power (Step S184), and then the fighting program is ended.

Within the attack range (Step S171) and out of the counter-attack range (Step S172), when there is an attack (Step S180) and there is a counter attack (Step S183), 1 is subtracted from the life power (Step S185), and 1 is subtracted from the fighting power (Step S186), and then the fighting program is ended.

(iii) Out of attack range and within counter-attack range

Out of the attack range (Step S171) and within the counter-attack range (Step S191), when there is no attack (Step S192) and there is no counter attack (Step S193), the fighting program is ended without performing anything.

Out of the attack range (Step S171) and within the counter-attack range (Step S191), when there is no attack (Step S192) and there is a counter attack (Step S193), 1 is added to the fund (Step S194), and 1 is subtracted from the fighting power (Step S195), and then the fighting program is ended.

Out of the attack range (Step S171) and within the counter-attack range (Step S191), when there is an attack (Step S192) and there is no counter attack (Step S196), the fighting program is ended without performing anything.

Out of the attack range (Step S171) and within the counter-attack range (Step S191), when there is an attack (Step S192) and there is a counter attack (Step S196), 1 is added to the fund (Step S197), and 1 is subtracted from the fighting power (StepS178), and then the fighting program is ended.

(iv) Out of attack range and out of counter-attack range

Out of the attack range (Step S171) and out of the counter-attack range (Step S191), when there is no attack (Step S201) and there is no counter attack (Step S202), the fighting program is ended without performing anything.

Out of the attack range (Step S171) and out of the counter-attack range (Step S191), when there is no attack (Step S201) and there is a counter attack (Step S202), 1 is subtracted from the fighting power (Step S203), and the fighting program is ended.

(Object Data Unit 541)

As FIG. 5 shows, the object data unit 541 includes character object data 542, background object data 543, attack object data 544, and other object data that are not shown in the drawing.

The character object data 542, the background object data 543, and the attack object data 544 are three-dimensional curve data respectively showing three-dimensional form of a character object, a background object, and an attack object, which are for a stationary game apparatus.

(2) Stationary Character Processing Program 551

As FIG. 5 shows, the stationary character processing program 551 is comprised of a program unit 552. The program unit 552 includes a stationary image generating program shown below.

The stationary image generating program is a computer program comprised of instructions in machine language formats. These machine language formats are to be decoded and executed by the graphics control unit 113 in the stationary game apparatus 100 (the graphics control unit 113 being detailed later), and the stationary image generating program is used by the graphics control unit 113.

The following describes the content of the stationary image generating program. For easier understanding of the content of the stationary image generating program, the following description uses flowcharts shown in FIGS. 15-16 to represent the stationary image generating program, instead of representation using instructions in machine language format. Accordingly, the stationary image generating program is explained as follows with use of these flowcharts.

The stationary image generating program receives a control signal indicating that writing of an instruction from the main control unit 108 to the register unit 109 has been complete. This control signal indicates an image generating request issued from the main control unit 108 and directed to the graphics control unit 113 (Step S301).

Upon receiving the control signal, the contents of the register R0 151 of the register unit 109 is read. The register R0 151 stores an instruction, which has been written by the main control unit 108 (Step S302).

Next, it is judged whether the contents read from the register R0 151, namely the instruction, is a screen display instruction or not (Step S303). If it is judged affirmatively (Step S303), during a vertical retrace time detailed later, a frame image stored in the frame buffer 106 of the stationary game apparatus 100 is transferred to the VRAM 115 (Step S310), and the control will return to Step S301 for repeating processing.

If it is judged negatively (Step S303), namely if it is judged that the read contents is one of a character-object generating instruction, a background-object generating instruction, and an attack-object generating instruction, the coordinates of the object which is the target of a corresponding generating instruction is read from the register unit 109. Specifically, in a case where the generating instruction is one of a character-object generating instruction, a background-object generating instruction, and an attack-object generating instruction, the contents in the register R1 152, the register R2 153, and the register R3 154 is respectively read (Step S304).

Next, the corresponding object data is read from the graphics storage unit 114 of the stationary game apparatus 100 (Step S305).

Here, if the corresponding object data corresponds to a character object (Step S306), the height and weight are read from the register R4 155 of the register unit 109 (Step S307), and correction is performed to the read character data using the read height and weight. This correction is a processing operation identical to as in the update performed at Step S103 in the flowchart of FIG. 9 (Step S308).

Next, object image generating is performed using the object data. The object image generating is detailed later (Step S309). Then the control will return to Step S301, for repeating processing.

(Procedure of Object Image Generation)

Next, the procedure of object image generation is described.

The object data is subjected to perspective projection transformation to generate wire frame data (step S321). Then polygon data is generated (Step S322), and processing of hidden plane clearing and hidden line clearing is performed (Step S323), and shade/shadow data is generated (Step S324).

Note that the perspective projection transformation, the polygon data generation, hidden plane clearing, hidden line clearing, and shade/shadow generation are disclosed in the non-patent references 2 and 3, and so are publicly known. Therefore explanation thereof is omitted in this description.

(3) Stationary Development Item Table 561

As shown in FIG. 5, the stationary development item table 561 includes a height flag 562, a weight flag 563, a life-power flag 564, and a fighting-power flag 565.

The height flag 562 indicates whether update of height is permitted for the character data obtained from the server apparatus 600 while the game is proceeded in the stationary game apparatus 100. The height flag 562 takes a value of either ON or OFF, where ON indicates that height update is permitted, and OFF indicates that height update is not permitted. Here in FIG. 5, the height flag 562 is set to be ON, which means that update directed to the height included in the character data obtained from the server apparatus 600 is permitted during the game proceeding in the stationary game apparatus 100.

The aforesaid rule also applies to the other flags.

The weight flag 563 indicates whether update of weight is permitted for the character data obtained from the server apparatus 600 while the game is proceeded in the stationary game apparatus 100. The weight flag 563 takes a value of either ON or OFF, where ON indicates that weight update is permitted, and OFF indicates that weight update is not permitted. Here in FIG. 5, the weight flag 563 is set to be ON, whichmeans that update directedto the weight included in the character data obtained from the server apparatus 600 is permitted during the game proceeding in the stationary game apparatus 100.

The life-power flag 664 indicates whether update of life power is permitted for the character data obtained from the server apparatus 600 while the game is proceeded in the stationary game apparatus 100. The life-power flag 664 takes a value of either ON or OFF, where ON indicates that life power update is permitted, and OFF indicates that life power update i s not permitted. Here in FIG. 5, the life-power flag 664 is set to be OFF, which means that update directed to the life power included in the character data obtained from the server apparatus 600 is not permitted during the game proceeding in the stationary game apparatus 100.

The fighting-power flag 665 indicates whether update of fighting power is permitted for the character data obtained from the server apparatus 600 while the game is proceeded in the stationary game apparatus 100. The fighting-power flag 665 takes a value of ON or OFF, where ON indicates that fighting power update is permitted, and OFF indicates that fighting power update is not permitted. Here in FIG. 5, the fighting-power flag 665 is set to be OFF, which means that update directed to the fighting power included in the character data obtained from the server apparatus 600 is not permitted during the game proceeding in the stationary game apparatus 100.

1.4 Stationary Game Apparatus 100

As FIG. 17 shows, the stationary game apparatus 100 is structured by a controller control unit 101, a memory card input/output unit 102, a drive unit 103, a communication unit 104, a connection unit 105, a frame buffer 106, an authentication unit 107, amain control unit 108, a register unit 109, a main storage unit 110, a large-capacity storage unit 111, a graphics control unit 113, a graphics storage unit 114, a VRAM 115, a video signal generating unit 116, an audio signal generating unit 117, a system bus 118, and an image bus 119.

The controller control unit 101, the memory card input/output unit 102, the drive unit 103, the communication unit 104, the connection unit 105, the frame buffer 106, the authentication unit 107, the main control unit 108, the main storage unit 110, the large-capacity storage unit 111, the graphics storage unit 114, the audio signal generating unit 117, and the video signal generating unit 116 are respectively connected to the system bus 118. In addition, the frame buffer 106, the graphics control unit 113, the graphics storage unit 114, the VRAM 115, and the video signal generating unit 116 are respectively connected to the image bus 119.

As FIG. 1 shows, an operation controller 122 and a monitor 120 are connected to the stationary game apparatus 100. In addition, a portable game apparatus 200 is connected to the stationary game apparatus 100 via the cable 30. Furthermore, the DVD 500 and the memory card 300 are loaded to the stationary game apparatus 100.

(1) Operation Controller 122

The operation controller 122 is provided with, on its surface, UP button, DOWN button, LEFT button, RIGHT button, DECISION button, START button, STOP button, and other buttons. When an operation directed to each button is received from a user, operation instruction information corresponding to the button to which the operation is directed is outputted to the stationary game apparatus 100.

(2) Controller Control Unit 101, Memory Card Input/Output Unit 102, Drive Unit 103, Communication Unit 104, and Connection Unit 105

The controller control unit 101 is connected to the operation controller 122, and receives operation instruction information corresponding to a button from the operation controller 122, and outputs the received operation instruction information to the main control unit 108 via the system bus 118.

In addition, upon loading of the memory card 300 to the stationary game apparatus 100, the memory card input/output unit 102 is connected to the memory card 300, and reads information from the memory card 300 by being controlled by the main control unit 108, and outputs the read information to the main control unit 108 via the system bus 118. In addition, the memory card input/output unit 102 receives information from the main control unit 108 via the system bus 118, and writes the received information to the memory card 300.

The drive unit 103, by being controlled by the main control unit 108, reads information stored in the DVD 500, and outputs the read information to the main control unit 108 via the system bus 118.

The communication unit 104 is connected to the Internet 20, and performs transmission/reception of information between the main control unit 108 and an external apparatus connected to the Internet 20. In this example, the external apparatus is specifically a server apparatus 600.

In addition, the connection unit 105 is connected to the portable game apparatus 200 via the cable 30, andreceives information from the portable game apparatus 200 via the cable 300, and outputs the received information to the main control unit 108. In addition, the connection unit 105 receives information from the main control unit 108, and outputs the received information to the portable game apparatus 200 via the cable 30.

(3) Monitor 120

The monitor 120 includes therein a speaker 121, receives a video signal, which includes a vertical retrace time and a horizontal retrace time, from the video signal generating unit 116, and displays an image according to the received video signal. The speaker 121 receives an audio signal from the audio signal generating unit 117, converts the received audio signal into a sound, and outputs the sound.

(4) Main Storage Unit 110, Large-Capacity Storage Unit 111, and Graphics Storage Unit 114

The main storage unit 110 is made of a RAM, and stores a stationary game program 131, a stationary development item table 132, character data 133, for example as shown in FIG. 18.

The large-capacity storage unit 111 is made of a hard disk unit, and stores game software 1, game software 2, . . . . The game software 1, the game software 2, . . . have the same data structure as the game software that the DVD 500 store.

The graphics storage unit 114 is made of a RAM, and stores an object data unit 134, a stationary character processing program 135, and character data 136, for example as shown in FIG. 19.

(5) Register Unit 109

As FIG. 20 shows, the register unit 109 is equipped with five registers: a register R0 151, a register R1 152, a register R2 153, a register R3 154, and a register R4 155. Each register is 128 bits in length.

The register unit 109 is connected to both of the main control unit 10 and the graphics control unit 113.

The use of each register unit is predefined.

The register R0 151 stores an instruction that the main control unit 108 has recorded to the register R0 151. The kind of instruction to be stored in the register R0 151 is shown in FIG. 21. As shown in this drawing, the instruction to be stored in the register R0 151 is one instruction out of: a character-object generating instruction 156; a background-object generating instruction 157; an attack-object generating instruction 158; and a screen display instruction 159.

The character-object generating instruction 156, the background-object generating instruction 157, and the attack-object generating instruction 158 are respectively for instructing generation of an image respectively corresponding to character object, background object, and attack object. The screen display instruction 159 is for instructing transfer of a frame image from the frame buffer 106 to the VRAM 115.

In addition, the register R1 152, the register R2 153, the register R3 154 are respectively used to store: a character-object coordinates value; a background-object coordinates value; and an attack-object coordinates value. Note that the highest 32 bits of each register is used to store an X-coordinate value, a Y-coordinate value, and a Z-coordinate value.

In addition, the highest 64 bits of the register R4 155 is used to store height, and the lowest 64 bits is used to store weight.

(6) Frame Buffer 106

The frame buffer 106 has an area for storing one frame of image. The frame image is made up of 256,000 pixels in matrix configuration (640 in a vertical line and 400 in a horizontal line).

(7) Authentication Unit 107

The authentication unit 107 performs mutual apparatus authentication with an external apparatus connected to the stationary game apparatus 100, using the challenge-response method and by being controlled by the main control unit 108, prior to communication or transmission/reception of information between the main control unit 108 and the external apparatus.

Here, explanation on challenge-response method is omitted because it is publicly known.

The authentication unit 107 outputs the result of the apparatus authentication to the main control unit 108. In failure of the apparatus authentication, the authentication unit 107 prohibits the main control unit 108 from communicating and transmitting/receiving information to/from the external apparatus, and in success of the apparatus authentication, the authentication unit 107 permits, to the main control unit 108, communication and transmission/reception of information with the external apparatus.

Here, the external apparatus is one of the portable game apparatus 200, the memory card 300, and the server apparatus 600.

(8) Main Control Unit 108

The main control unit 108 is specifically comprised of a microprocessor and a RAM, which are not shown in the drawings. The RAM, the main storage unit 110, or the large-capacity storage unit 111 stores a computer program. The main control unit 108 achieves its function by the microprocessor operating according to the computer program.

(Menu Display)

When a user turns on the power to the stationary game apparatus 100, the main control unit 108 generates a menu screen 160, as FIG. 22 shows. The menu screen 160 is comprised of a plurality of alternatives 161, 163, and 165.

The alternative 161 is used to instruct to display a list of game titles from which the user will make a selection. The alternative 163 is used to instruct to obtain character data from the server apparatus 600 via the Internet 20, and to write the character data to the memory card 300. The alternative 164 is used to instruct other operations.

When a user selects any one of the alternatives, the main control unit 108 receives instruction information corresponding to the selected alternative from the operation controller 122 via the controller control unit 101, and performs an operation corresponding to the received instruction information.

(Game Selection)

When the received instruction information indicates a display of the title list, the main control unit 108 reads the game title from the DVD 500 via the drive unit 103, and reads a plurality of game titles from the large-capacity storage unit 111. Then the main control unit generates a list of game titles constituted by the read game titles, and writes the generated list of game titles to the frame buffer 106, as frame images. Next, the user selects one game title from among the list of game titles. Note that in this example, the user selects the game stored in the DVD 500.

When the user selects one game title, the main control unit 108 obtains a game identifier corresponding to the selected game title, from the operation controller 122 and via the controller control unit 101.

Next, the main control unit 108 controls the authentication unit 107 to perform apparatus authentication with the memory card 300, and in success of the apparatus authentication, performs game processing explained below. In failure of the apparatus authentication, the main control unit does not perform the game processing thereafter.

(Game Selection)

Next, the main control unit 108 reads the stationary game program 511 from the DVD 500, writes the stationary game program 511 to the main storage unit 110, reads the object data unit 541, writes the object data unit 541 to the graphics storage unit 114, reads the stationary character processing program 551, writes the stationary character processing program 551 to the graphics storage unit 114, reads the stationary development item table 561, and writes the stationary development item table 561 to the main storage unit 110. In addition, the main control unit 108 reads the character data 321, the resumption stage No. 335, and the resumption step No. 336, from the memory card 300, and writes the character data 321, the resumption stage No. 335, and the resumption step No. 336, to the main storage unit 110, and writes the height and weight included in the character data, to the graphics storage unit 114.

Next, the main control unit 108 fetches the instructions one by one, from the program unit of the stationary game program stored in the main storage unit 110, decodes the fetched instructions, and executes the decoded instructions. Hereinafter, the fetching, the decoding, and the executing of instruction are repeated.

(Obtaining Operation of Character Data Performed by Stationary Game Apparatus 100)

When the received instruction information indicates obtaining character data from the server apparatus 600 and writing the character data to the memory card 300, the main control unit 108 reads a user ID from the memory card 300 via the memory card input/output unit 102, reads a game identifier BID and a public key BPK, from the DVD 500 via the drive unit 103. Next, themain control unit 108 performs a digital signature SIG on the game identifier BID and the user ID using the public key BPK, thereby generating signature data.

Next, the main control unit 108 transmits the user ID, the game identifier, and the signature data, to the server apparatus 600 via the communication unit 104 and the Internet 20.

The main control unit 108 receives a verification result of the digital signature from the server apparatus 600 via the Internet 20 and the communication unit 104. When the received verification result indicates a failure, the main control unit 108 generates a display screen displaying such, writes the generated display screen to the frame buffer 106 as a frame image, outputs, to the graphics control unit 113, a control signal indicating that an instruction has been written to the register unit 109, writes a screen display instruction to the register R0 151 of the register unit 109, and ends the processing.

When the received verification result indicates a success, the main control unit 108 transmits a communication instruction to the server apparatus 600 via the communication unit 104 and the Internet 20, so that the server apparatus 600 performs a communication with the memory card 300. In addition, the main control unit 108 outputs a communication instruction to the memory card 300 via the memory card input/output unit 102, so that the memory card 300 communicates with the server apparatus 600.

Next, the main control unit 108 receives a result of apparatus authentication between the server apparatus 600 and the memory card 300, from the server apparatus 600 via the Internet 20 and the communication unit 104. In addition, the main control unit 108 receives a result of apparatus authentication between the server apparatus 600 and the memory card 300, from the memory card 300 via the memory card input/output unit 102. When at least one of the received results indicates a failure in apparatus authentication, the main control unit 108 generates a display screen displaying a message indicating such, writes to the frame buffer 106 the generated display screen as a frame image, and outputs to the graphics control unit 113 a control signal indicating that an instruction has been written to the register unit 109, writes a screen display instruction to the register R0 151 of the register unit 109, and ends the processing.

When both of the received results show success in the apparatus authentication, the main control unit 108 receives a search result of the user ID, from the server apparatus 600 and via the Internet 20 and the communication unit 104, and when the received search result shows that the user ID does not exist, the main control unit 108 generates a display screen displaying a message indicating such, writes to the frame buffer 106 the generated display screen as a frame image, and outputs to the graphics control unit 113 a control signal indicating that an instruction has been written to the register unit 109, writes a screen display instruction to the register R0 151 of the register unit 109, outputs the received search result to the memory card 300 via the memory card input/output unit 102, and ends the processing.

When the received search result indicates that the user ID exists, the main control unit 108 receives character data from the server apparatus 600 via the Internet 20 and the communication unit 104, and outputs the received character data to the memory card 300 via the memory card input/output unit 102.

In addition, the main control unit 108 receives completion information indicating completion in writing of character data, from the memory card 300 via the memory card input/output unit 102, and outputs the received completion information to the server apparatus 600 via the communication unit 104 and the Internet 20.

(Relay Processing Performed by Stationary Game Apparatus 100 When Portable Game Apparatus 200 Obtains Character Data)

When the portable game apparatus 200 obtains character data from the server apparatus 600 via the stationary game apparatus 100, the main control unit 108 receives a user ID, a game identifier, and signature data, from the portable game apparatus 200 via the memory card input/output unit 102, receives a communication instruction, receives completion information, transmits the user ID, the game identifier, and the signature data, to the server apparatus 600 via the communication unit 104 and the Internet 20, transmits the received communication instruction, and transmits the received completion information.

In addition, the main control unit 108 receives a verification result of the digital signature, from the server apparatus 600 via the Internet 20 and the communication unit 104, receives a verification result of the digital signature, receives a search result of the user ID, receives the character data, transmits the received verification result to the memory card 300 via the memory card input/output unit 102, transmits the received search result, and transmits the received character data.

(9) Graphics Control Unit 113

The graphics control unit 113 is specifically comprised of a processor dedicated for graphics which is not shown in the drawings.

The graphics control unit 113 fetches an instruction included in the stationary character processing program that the graphics storage unit 114 stores therein, decodes the fetched instruction, and executes the decoded instruction. The graphics control unit 113 repeats the fetching of instruction, the decoding of instruction, and the executing of instruction.

(10) VRAM 115

The VRAM 115 has an area for storing one frame of image. The frame image is made up of 256,000 pixels in matrix configuration (640 in a vertical line and 400 in a horizontal line). Here, the frame image has the same size as the frame image stored in the frame buffer 106.

(11) Video Signal Generating Unit 116

The video signal generating unit 116 repeats the following (a)-(b), every 1/60 second.

(a) Generates a vertical synchronizing signal, and outputs it to the monitor 120. This time period is called “vertical retrace time”.

(b) Repeats the following (b1)-(b3) for 400 times (400 times corresponding to the number of pixel in the vertical line of one frame image).

(b1) Reads, from the VRAM 115, pixels on one horizontal line of one frame image (640 pixels).

(b2) Generates one line of video signal and horizontal synchronizing signal, using the read frame image.

(b3) Outputs the one line of video signal and horizontal synchronizing signal, to the monitor 120.

(12) Audio signal generating unit 117 and Speaker 121

The audio signal generating unit 117 reads digital audio information from the main storage unit 110, by being controlled by the main control unit 108, decodes the read audio information, converts the decoded audio information into an analogue audio signal, and outputs the analogue audio signal to the speaker 121.

The speaker 121 receives an audio signal from the audio signal generating unit 117, and outputs a sound. 1.5 Memory Card 300

As FIG. 23 shows, the memory card 300 is comprised of an information storage unit 301, a control unit 302, an input/output unit 303, and an authentication unit 304.

The memory card 300 is specifically a computer system comprised of a microprocessor, a ROM, a RAM, and the like. The RAM stores therein a computer program. The memory card 300 achieves its function by the microprocessor operating according to the computer program.

The memory card 300 is loaded to an external apparatus, receives information from the external apparatus, stores therein the received information. Or the memory card 300 reads information from inside, and outputs the read information to the external apparatus.

Here, the external apparatus is one of the stationary game apparatus 100, the portable game apparatus 200, and the server apparatus 600.

(1) Information Storage Unit 301

As FIG. 23 shows, the information storage unit 301 has an area for storing character data 321, a user ID 334, a resumption stage No. 335, and a resumption step No. 336.

The user ID 334 is identification information for uniquely identifying the user. of the memory card 300. The user ID 334 has been written to the memory card 300 by a sales apparatus managed by a sales agent when the user has purchased either the DVD 500 or the cartridge 400.

As FIG. 23 shows, the character data 321 is made up of a character ID 322, tribe 323, sex 324, occupation 325, height 326, weight 327, hair style 328, shape of eyes 329, shape of ears 330, life power 331, fighting power 332, and fund 333. The character data is the same as described in the former section, and so is not repeated here.

The resumption stage No. 335 and the resumption step No. 336 are also the same as described in the former section, and so are not repeated here.

(2) Control Unit 302

Prior to transmitting/receiving information to/from an external apparatus, the control unit 302 controls the authentication unit 304 to perform mutual apparatus authentication with the external apparatus. In success of the apparatus authentication, the control unit 302 continues transmission/reception of information with the external apparatus, and in failure of the apparatus authentication, the control unit 302 stops the transmission/reception of information with the external apparatus.

The control unit 302 receives information via the input/output unit 303, and writes the received information to the information storage unit 301. The control unit 302 also reads information from the information storage unit 301, and outputs the read information to the external apparatus via the input/output unit 303.

Specifically, the control unit 302 receives a search result relating to the user ID, either from the stationary game apparatus 100 or the portable game apparatus 200, via the input/output unit 303. When the received search result indicates nonexistence of the user ID, the control unit 302 does not perform the processing thereafter, and when the received search result indicates existence of the user ID, continues the processing.

In addition, the control unit 302 receives character data either from the stationary game apparatus 100 or the portable game apparatus 200 via the input/output unit 303, and writes the received character data to the information storage unit 301.

(3) Input/Output Unit 303

The input/output unit 303, by being controlled by the control unit 302, reads information from the information storage unit 301 and outputs the information to the external apparatus, or receives information from the external apparatus and writes the received information to the information storage unit 301.

(4) Authentication Unit 304

Prior to transmission/reception of information between the control unit 302 and the external apparatus to which the memory card 300 has been loaded, the authentication unit 304 performs mutual apparatus authentication with the external apparatus, by being controlled by the control unit 302, using the challenge-response method. Here, explanation on challenge-response method is omitted because it is publicly known.

The authentication unit 304 outputs a result of the apparatus authentication to the control unit 302. In failure of the apparatus authentication, the authentication unit 304 prohibits the control unit 302 from transmitting/receiving information to/from the external apparatus, and in success of the apparatus authentication, the authentication unit 304 permits, to the control unit 302, transmission/reception of information with the external apparatus.

1.6 Cartridge 401

As FIG. 24 shows, the cartridge 400 is comprised of an information storage unit 401 and an input/output unit 402.

(1) Information Storage Unit 401

As FIG. 24 shows one example thereof, the information storage unit 401 prestores a stationary game program 411, a stationary character processing program 451, and a stationary development item table 461. These are either a computer program or computer data used in the portable game apparatus 200, and constitute one game software program.

A game, proceeded by the portable game program 411, the portable character processing program 451, and the portable development item table 461 which are stored in the information storage unit 401, is the same as the game proceeded by the stationary game program 511, the stationary character processing program 551, and the stationary development item table 561 which are stored in the DVD 500. Therefore the description about the game is omitted here.

The portable game program 411 is comprised of a related information unit 421, a program unit 431, and an object data unit 441.

(Related Information Unit 421)

The related information unit 421 is comprised of a game section 422, a game identifier AID 423, a public key APK 424, a game title 425, and audio information not drawn in this drawing.

The game section 422 indicates that the portable game program 411 is a game program used in a portable game apparatus.

The game identifier AID 423 is identification information for identifying the portable game program 411.

The public key APK 424 is generated using a secret key and by the public-key generation method. Here, the secret key corresponds to the game identifier found in the game information table 621 that the information storage unit 601 of the server apparatus 600 owns, which is identical to the game identifier AID 423. One example of the public-key generation method is as described above.

The game title is a title used for identifying a game realized by the portable game program 411.

The audio information is coded data of the character's voice, music, and sound effect.

(Program Unit 431)

The program unit 431 includes a computer program for a portable game (hereinafter called “portable main program”), a computer program for processing one frame of image (hereinafter called “portable frame processing program”) and a computer program for processing fighting scenes (hereinafter called “fighting-scene program”). Each computer program is comprised of a plurality of instructions in various machine language formats. The machine language formats are a format to be decoded and executed by a main control unit 208 of the portable game apparatus 200 (the main control unit 208 will be described in detail later). The portable main program, the portable frame processing program, and the fighting-scene program are used by the main control unit 208.

The portable frame processing program is called by the portable main program for use. In addition, the fighting-scene program is called by the portable frame processing program for use.

The following describes the content of each computer program. For easier understanding of the content of each computer program, the following description uses flowcharts to represent computer programs, instead of representation using instructions in machine language format.

(a) Portable Main Program

The following describes the portable main program with use of the flowcharts of FIGS. 25-26.

Here, the detailed explanation on the portable main program is not performed, because it is similar to the stationary main program shown in FIGS. 9-10.

The portable main program reads the resumption stage No. 335 and the resumption step No. 336, and writes the read resumption stage No. and resumption step No. to the main storage unit 210 (Step S401).

The portable main program reads the character data 321 from the memory card 300, and writes the read character data to the main storage unit 210 (Step S402).

Next, the portable main program extracts the height and the weight from the character data in the main storage unit 110, and updates the character object data stored in the main storage unit 210, so as to change the form of the character based on the ratio of the height to the weight (Step S403).

Next, in Step S405-Step S424, the following step S406-Step S423 are repeated until the game stage shown by “n” is completed by starting with the game stage shown by the resumption stage No.

(i) In step S406-Step S413, the following step S407-Step S412 are repeated until the game step shown by “m” is completed by starting with the game step shown by the resumption step No.

It is judged whether the life power written in the main storage unit 210 shows “0” (Step S407).

When the life power is judged to show “0” (Step S407), a screen showing game ending is generated, and the generated screen is written to the frame buffer of the main storage unit 210, as a frame image (Step S408). During the vertical retrace time, the frame image in the frame buffer is transferred to the VRAM 215 (Step S409). Then the game ends.

When the life power is judged not to show “0” (Step S407), it is judged whether the elapsed time in the game step exceeds the maximum value MAX (Step S410), and when the elapsed time is judged to exceed the maximum value MAX (Step S410), the game step is ended, and the operation goes on to the next game step.

When the elapsed time is judged not to exceed the maximum value MAX (Step S410), the elapsed time is counted (Step S411), and the portable frame processing program is called so as to move the control to the portable frame processing program, thereby performing processing for one frame of image (Step S412). After the processing for one frame of image has ended, the operation returns to Step S410, so as to repeat the processing.

(ii) Next, it is judged whether the height flag written in the main storage unit 210 is “ON” or “OFF” (Step S414) If the height flag is judged to be “OFF” (Step S414), the control is moved to Step S417. If the height flag is judged to be “ON” (Step S414), the value “10” is added to the height written in the main storage unit 210 (Step S415).

(iii) Next, it is judged whether the weight flag written in the main storage unit 210 is “ON” or “OFF” (Step S417). If the weight flag is judged to be “OFF” (Step S417), the control is moved to Step S420. If the weight flag is judged to be “ON” (Step S417), the value “0.5” is added to the weight written in the main storage unit 210 (Step S418).

(iv) Next, it is judged whether the life-power flag written in the main storage unit 110 is “ON” or “OFF” (Step S420). If the life-power flag is judged to be “OFF” (Step S420), the control is moved to Step S422. If the life-power flag is judged to be “ON” (Step S420), the value “10” is added to the life power written in the main storage unit 210 (Step S421).

(v) Next, it is judged whether the fighting-power flag written in the main storage unit 210 shows “ON” or “OFF” (Step S422). If the fighting-power flag is judged to be “ON” (Step S422), the value “10” is added to the fighting power written in the main storage unit 210 (Step S423). If the fighting-power flag is judged to be “OFF” (Step S422), nothing is performed.

(b) Portable Frame Processing Program

The following describes the portable frame processing program with use of the flowcharts shown in FIGS. 27-28.

Note that the portable frame processing program is similar to the stationary frame processing program shown in FIGS. 11 and 12, and so simplified explanation is given below.

The portable frame processing program calculates the coordinates value (three-dimensional coordinates) of the current attack object in the game space (Step S431).

Next, the calculated coordinates value of the attack object is written to the.main storage unit 210 (Step S432).

Next, operation instruction information corresponding to the button is received from the input unit 201, and a type of the received operation instruction information is judged (Step S433).

When received operation instruction information corresponds to anyone of UP button, DOWN button, LEFT button, and RIGHT button (Step S433), the following operations are respectively performed: adding “1” to the Y-coordinate value of the character object (Step S434); subtracting “1” from the Y-coordinate value of the character object (Step S435); subtracting “1” from the X-coordinate value of the character object (Step S436); and adding “1” to the X-coordinate value of the character object (Step S437).

When received operation instruction information corresponds to the STOP button (Step S433), the control is moved to Step S445.

When received operation instruction information corresponds to the DECISION button (Step S433), nothing is performed and the control is moved to Step S439.

When received operation instruction information corresponds to one of the other buttons (Step S433), the processing corresponding to the button is performed (Step S438), and then the portable frame processing program is ended.

When operation instruction information is not received (Step S433), nothing is performed and the control is moved to Step S439.

Next, the fighting program is called thereby moving the control to the fighting program, so as to perform processing at fighting. Here, the detailed explanation on the fighting processing is omitted, because it is the same as in the flowcharts of FIGS. 13-14 (Step S439).

When processing at fighting is finished, the coordinates value of the character object is written to the main storage unit 110 (Step S440).

Next, the coordinates value of the background object is calculated (Step S441), and the calculated coordinates value for the background is written to the main storage unit 110 (Step S442).

Next, the back ground object is specified and a portable frame processing program is called (Step S443). Then an attack object is specified and the portable frame processing program is called (Step S444). Then a character object is specified and the portable frame processing program is called (Step S451).

Next, during the vertical retrace time, a frame image of the frame buffer in the main storage unit 210 is transferred to the VRAM 215 (Step S452). Next, processing of the portable frame processing program is ended.

When received operation instruction information corresponds to the STOP button (Step S433), a SAVE screen is generated which includes a message for confirming the user whether 1) character data, a resumption stage No., and a resumption step No. should be saved in the memory card 300 before ending of the game, or 2) the game can be ended without saving the above information. Then the generated SAVE screen is written to the frame buffer of the main storage unit 210, as a frame image (Step S445) Next, during the vertical retrace time, the frame image of the frame buffer is transferred to the VRAM 215 (Step S152).

Next, operation instruction information corresponding to a button is received from the input unit 201. Here, the operation instruction information indicates either to perform the save or not. Next, a type of the received operation instruction information is judged (Step S447).

When the received operation instruction information indicates not to perform the save (Step S447), the game processing is ended.

When the received operation instruction information indicates to perform the save (Step S447), height, weight, life power, fighting power, fund, resumption stage No. and resumption step No. are read from the main storage unit 210 (Step S448), and the character data 321 in the information storage unit 301 is over written with the read height, weight, life power, fighting power, and fund. In addition, the resumption stage No. 335 and the resumption step No. 335 are overwritten with the read resumption stage No. and the resumption step No. (Step S449). Next, the processing of the portable processing program is ended.

(c) Fighting Program

The fighting program has the same details as the program shown by the flowcharts of FIGS. 13-14. Therefore the description thereof is omitted here.

(Object Data Unit 441)

As FIG. 24 shows, the object data unit 441 includes character object data 442, background object data 443, attack object data 444, and other object data that are not shown in the drawing.

The character object data 442, the background object data 443, and the attack object data 444 are three-dimensional curve data respectively showing three-dimensional form of a character object, a background object, and an attack object, which are for a portable game apparatus.

(Portable Character Processing Program 451)

As FIG. 24 shows, the portable character processing program 451 is comprised of a program unit 452. The program unit 452 includes a portable image generating program shown below.

The portable image generating program is a computer program comprised of instructions in machine language formats. These machine language formats are to be decoded and executed by the main control unit 208 in the portable game apparatus 200 (the main control unit 208 being detailed later), and the portable image generating program is used by the main control unit 208.

The following describes the content of the portable image generating program. For easier understanding of the content of the portable image generating program, the following description uses flowchart shown in FIG. 29 to represent the portable image generating program, instead of representation using instructions in machine language format. Accordingly, the portable image generating program is explained as follows with use of the flowchart.

The portable image generating program reads, from the main storage unit 210, the coordinates of the object to be generated (Step S464).

Next, the portable image generating program reads corresponding object data from the main storage unit 210 (Step S465).

Here, if the corresponding object data corresponds to a character object (Step S466), the portable image generating program reads height and weight from the main storage unit 210 (Step S467), and corrects the read character data using the read height and weight. Note that this correction is a processing operation identical to the update performed at Step S103 in the flowchart of FIG. 9 (Step S468).

Next, the object data is subjected to perspective projection transformation to generate wire frame data (Step S471). Then polygon data is generated (Step S472), and processing of hidden plane clearing and hidden line clearing is performed (Step S473), and shade/shadow data is generated (Step S474).

(Portable Development Item Table 461)

As shown in FIG. 24, the portable development item table 461 includes a height flag 462, a weight flag 463, a life-power flag 464, and a fighting-power flag 465.

The height flag 462 indicates whether update of height is permitted for the character data obtained from the server apparatus 600 while the game is proceeded in the portable game apparatus 200. The height flag 462 take a value of either ON or OFF, where ON indicates that height update is permitted, and OFF indicates that height update is not permitted. Here in FIG. 24, the height flag 462 is set to be OFF, which means that update directed to the height included in the character data obtained from the server apparatus 600 is not permitted during the game proceeding in the portable game apparatus 200.

The aforesaid rule also applies to the other flags.

The weight flag 463 indicates whether update of weight is permitted for the character data obtained from the server apparatus 600 while the game is proceeded in the portable game apparatus 100. The weight flag 463 takes a value of either ON or OFF, where ON indicates that weight update is permitted, and OFF indicates that weight update is not permitted. Here in FIG. 24, the weight flag 463 is set to be OFF, which means that update directed to the weight included in the character data obtained from the server apparatus 600 is not permitted during the game proceeding in the portable game apparatus 200.

The life-power flag 464 indicates whether update of life power is permitted for the character data obtained from the server apparatus 600 while the game is proceeded in the portable game apparatus 200. The life-power flag 464 takes a value of either ON or OFF, where ON indicates that life power update is permitted, and OFF indicates that life power update is not permitted. Here in FIG. 24, the life-power flag 464 is set to be ON, which means that update directed to the life power included in the character data obtained from the server apparatus 600 is permitted during the game proceeding in the portable game apparatus 200.

The fighting-power flag 465 indicates whether update of fighting power is. permitted for the character data obtained from the server apparatus 600 while the game is proceeded in the portable game apparatus 200. The fighting-power flag 465 takes a value of ON or OFF, where ON indicates that fighting power update is permitted, and OFF indicates that fighting power update is not permitted. Here in FIG. 24, the fighting-power flag 465 is set to be ON, which means that update directed to the fighting power included in the character data obtained from the server apparatus 600 is permitted during the game proceeding in the portable game apparatus 200.

1.7 Portable Game Apparatus 200

As FIG. 30 shows, the portable game apparatus 200 is structured by an input unit 201, a memory card input/output unit 202, a cartridge input/output unit 203, a connection unit 205, a main control unit 208, a main storage unit 210, an authentication unit 212, a VRAM 215, a video signal generating unit 216, an electronic sound generating unit 217, a system bus 218, a liquid crystal display unit 220, and a speaker 221.

The input unit 201, the memory card input/output unit 202, the cartridge input/output unit 203, the connection unit 205, the main control unit 208, the main storage unit 210, the authentication unit 212, the VRAM 215,the video signal generating unit 216, and the electronic sound generating unit 217 are respectively connected to the system bus 218.

The portable game apparatus 200 is connected to the stationary game apparatus 100 via the cable 30. In addition, the cartridge 400 and the memory card 300 are loaded to the portable game apparatus 200.

(1) Input Unit 201

The input unit 201 is provided with UP button, DOWN button, LEFT button, RIGHT button, DECISION button, START button, STOP button, and other buttons. When an operation directed to each button is received from a user, operation instruction information corresponding to the button to which the operation is directed is generated, and is outputted to the main control unit 208 via the system bus 118.

(2) Memory Card Input/Output Unit 202, Cartridge Input/Output Unit 203, and Connection Unit 205

When the memory card 300 is loaded to the portable game apparatus 200, the memory card input/output unit 202 is connected to the memory card 300, and by being controlled by the main control unit 208, reads information from the memory card 300, outputs the read information to the main control unit 208 via the system bus 218, receives information from the main control unit 208 via the system bus 218, and writes the received information to the memory card 300.

The cartridge input/output unit 203, by being controlled by the main control unit 208, reads information from the cartridge 400, and outputs the read information to the main control unit 208 via the system bus 218.

The connection unit 205 is connected to the stationary game apparatus 100 via the cable 30, receives information from the stationary game apparatus 100 via the cable 30, and outputs the received information to the main control unit 208. The connection unit 205 also receives information from the main control unit 208, and outputs the received information to the stationary game apparatus 100 via the cable 30.

(3) Liquid Crystal Display Unit 220 and Speaker 221

The liquid crystal display unit 220 receives a video signal that includes a vertical retrace time and a horizontal retrace time from the video signal generating unit 216, and displays an image according to the received video signal.

The speaker 221 receives an audio signal from the electronic sound generating unit 217, converts the received audio signal into a sound, and outputs the sound.

(4) Main Storage Unit 210

The main storage unit 210 is made of a RAM, and stores such information as a portable game program 231, a portable character processing program 235, a portable development item table 236, character data 237, a resumption stage No. and a resumption step No, as shown in FIG. 31. The portable game program 231 includes a related information unit 232, a program unit 233, and an object data unit 234.

In addition, the main storage unit 210 is equipped with a frame buffer. The frame buffer has an area for storing one frame of image. The frame image is made up of 64,000 pixels in matrix configuration (320 in a vertical line and 200 in a horizontal line).

(5) Authentication Unit 212

The authentication unit 212 performs mutual apparatus authentication with an external apparatus connected to the portable game apparatus 200, using the challenge-response method and by being controlled by the man control unit 208, prior to communication or transmission/reception of information between the main control unit 208 and the external apparatus.

Here, explanation on challenge-response method is omitted because it is publicly known.

The authentication unit 212 outputs the result of the apparatus authentication to the main control unit 208. In failure of the apparatus authentication, the authentication unit 212 prohibits the main control unit 208 from communicating and transmitting/receiving information to/from the external apparatus, and in success of the apparatus authentication, the authentication unit 212 permits, to the main control unit 208, communication and transmission/reception of information with the external apparatus.

Here, the external apparatus is one of the stationary game apparatus 100 and the memory card 300.

(6) Main Control Unit 208

The main control unit 208 is specifically comprised of a microprocessor and a RAM, which are not shown in the drawings. The RAM stores a computer program. The main control unit 208 achieves its function by the microprocessor operating according to the computer program.

(Menu Display)

When a user turns on the power to the portable game apparatus 200, the main control unit 208 generates a same menu screen as the menu screen 160 of FIG. 22. During the vertical retrace time, the main control unit 208 writes the generated menu screen to the VRAM. This menu screen includes at least 3 alternatives.

The first alternative is used for instructing executing of the portable game program 411 recorded in the cartridge 400. The second alternative is used for instructing obtaining of character data from the server apparatus 600 via the Internet 20 and the stationary game apparatus 100, and writing the obtained character data to the memory card 300. The third alternative is used for instructing other operations.

When a user selects any one of the alternatives, the main control unit 208 receives instruction information corresponding to the selected alternative from the input unit 201, and performs an operation corresponding to the received instruction information.

(Game Execution)

Upon receiving instruction information instructing execution of the portable game program 411 from the input unit 201, the main control unit 208 controls the authentication unit 212 to perform apparatus authentication with the memory card 300. In success of the apparatus authentication, the main control unit 208 performs processing of a game explained below. In failure of the apparatus authentication, the main control unit 208 does not perform the game processing thereafter.

(Game Processing)

Next, the main control unit 208 reads the portable game program 441 from the cartridge 400, writes the portable game program to the main storage unit 210, reads the portable character processing program 451, writes the portable character processing program 451 to the main storage unit 210, reads the portable development item table 461, and writes the portable development item table to the main storage unit 210. In addition, the main control unit 208 reads character data 321, a resumption stage No. 335 and a resumption step No. 336 from the memory card 300, and writes the character data, the resumption state No. 335, and the resumption step No. 336 to the main storage unit 210.

Next, the main control unit 208 fetches the instructions one by one, from the stationary game program unit of the main storage unit 210, decodes the fetched instructions, and executes the decoded instructions. Hereinafter, the fetching, the decoding, and the executing of instruction are repeated.

(Obtaining Operation of Character Data Performed by Stationary Game Apparatus 100)

When the main control unit 208 receives instruction information indicating to obtain character data from the server apparatus 600 via the stationary game apparatus 100 and to write the character data to the memory card 300, the main control unit 208 reads a user ID from the memory card 300 via the memory card input/output unit 202, and reads a game identifier AID and a public key APK from the cartridge 400 via the cartridge input/output unit 203. Then, the main control unit 208 performs a digital signature SIG on the game identifier AID and the user ID using the public key APK, thereby generating signature data.

Next, the main control unit 208 transmits the user ID, the game identifier AID, and the signature data, to the server apparatus 600 via the stationary game apparatus 100 and the Internet 20.

The main control unit 208 receives a verification result of the digital signature from the server apparatus 600 via the Internet 20, the stationary game apparatus 100, and the connection unit 205. When the received verification result indicates a failure, the main control unit 208 generates a display screen displaying a message indicating such, writes the generated display screen to the frame buffer as a frame image, transmits the frame image from the frame buffer to the VRAM 215 during the vertical trace time, and ends the processing.

When the received verification result indicates a success, themain control unit 208 transmits a communication instruction to the server apparatus 600 via the connection unit 205, the stationary game apparatus 100, and the Internet 20, so that the server apparatus 600 communicates with the memory card 300. In addition, the main control unit 208 outputs a communication instruction to the memory card 300 via the memory card input/output unit 202, so that the memory card 300 communicates with the server apparatus 600.

Next, the main control unit 208 receives a result of apparatus authentication between the server apparatus 600 and the memory card 300, from the server apparatus 600 via the Internet 20, the stationary game apparatus 100, and the connection unit 205. In addition, the main control unit 208 receives a result of apparatus authentication between the server apparatus 600 and the memory card 300, from the memory card 300 via the memory card input/output unit 202. When at least one of the received results indicates a failure in apparatus authentication, the main control unit 208 generates a display screen displaying a message indicating such, writes to the frame buffer the generated display screen as a frame image, transfers the frame image from the frame buffer to the VRAM 215 during the vertical trace time, and ends the processing.

When both of the received results show success in the apparatus authentication, the main control unit 208 receives a search result of the user ID, from the server apparatus 600 and via the Internet 20, the stationary game apparatus 100, and the connection unit 205, and when the received search result shows nonexistence of the user ID, the main control unit 208 generates a display screen displaying a message indicating such, writes to the frame buffer the generated display screen as a frame image, transfers the frame image from the frame buffer to the VRAM 215 during the vertical retrace time. The main control unit 208 also outputs the received search result to the memory card 300 via the memory card input/output unit 202, and ends the processing.

In addition, when the received search result indicates existence of the user ID, the main control unit 208 receives character data from the server apparatus 600 via the Internet 20, the stationary game apparatus 100, and the connection unit 205, and outputs the received character data to the memory card 300 via the memory card input/output unit 202.

In addition, the main control unit 208 receives completion information indicating completion of writing of the character data, from the memory card 300 via the memory card input/output unit 202, and transmits the received completion information to the server apparatus 600 via the connection unit 205, the stationary game apparatus 100, and the Internet 20.

(Execution of Portable Character Processing Program)

The main control unit 208 also fetches an instruction included in the portable character processing program stored in the main storage unit 210, decodes the fetched instruction, and executes the decoded instruction. The main control unit 208 repeats the fetching, the decoding, and the executing of instruction.

(7) VRAM 215

The VRAM 215 has an area for storing one frame of image. The frame image is made up of 64,000 pixels in matrix configuration (320 in avertical line and 200 in a horizontal line). Here, the frame image has the same size as the frame image stored in the frame buffer.

(8) Video Signal Generating Unit 216

The video signal generating unit 216 repeats the following (a)-(b), every 1/60 second.

(a) Generates a vertical synchronizing signal, and outputs it to the liquid crystal display unit 220. This time period is called “vertical retrace time”.

(b) Repeats the following (b1)-(b3) for 200 times (200 times corresponding to the number of pixel in the vertical line of one frame image).

(b1) Reads, from the VRAM 215, pixels on one horizontal line of one frame image (320 pixels).

(b2) Generates one line of video signal and horizontal synchronizing signal, using the read frame image.

(b3) Outputs the one line of video signal and horizontal synchronizing signal, to the liquid crystal display unit 220.

(9) Electronic Sound Generating Unit 217 and Speaker 221

The electronic sound generating unit 217, by being controlled by the main control unit 208, reads digital audio information from the main storage unit 210, decodes the read audio information, converts the decoded audio information into an analogue audio signal, and outputs the analogue audio signal to the speaker 221.

The speaker 221 receives the audio signal from the electronic sound generating unit 217, converts the received audio signal into a sound, and outputs the sound. 1.8 Convenience-Store Terminal 700

As FIG. 32 shows, the convenience-store terminal 700 is comprised of a display unit 701, an input unit 702, a control unit 703, a memory card input/output unit 704, a communication unit 705, a cash receiving unit 706, and a storage 707.

(1) Display Unit 701 and Input Unit 702

The display unit 701 displays various types of information, by being controlled by the control unit 703.

The input unit 702 receives an instruction from an operator of the convenience-store terminal 700, and outputs instruction information corresponding to the received instruction, to the control unit 703.

(2) Control Unit 703

The control unit 703 receives, from the input unit 702, instruction information indicating obtaining of character data from the server apparatus 600. Upon reception of the instruction information, the control unit 703 transmits authentication instruction for instructing mutual apparatus authentication between the memory card 300 and the server apparatus 600, to the server apparatus 600 via the communication unit 705 and the Internet 20. Then the control unit 703 outputs the authentication instruction to the memory card 300 via the memory card input/output unit 704.

Next, the control unit 703 receives a result of apparatus authentication between the server apparatus 600 and the memory card 300, from the server apparatus 600 via the Internet 20 and the communication unit 705. In addition, the control unit 703 receives a result of apparatus authentication between the server apparatus 600 and the memory card 300, from the memory card 300 via the memory card input/output unit 704. If at least one of the received results indicates a failure of apparatus authentication, the control unit 703 generates a display screen displaying a message indicating such, outputs the generated display screen to the display unit 701, controls the display unit 701 to display the display screen, and ends the processing.

When both of the received results show success in the apparatus authentication, the control unit 703 receives game sales information from the server apparatus 600 via the Internet 20 and the communication unit 705, generates a game list using the received game sales information, outputs the generated game list to the display unit 701, and controls the display unit 701 to display the game list.

Next, the control unit 703 receives a game identifier of a game selected by a user, from the input unit 702, receives, from the cash receiving unit 706, receipt information indicating receipt of cash corresponding to the selected game, and transmits the received game identifier to the server apparatus 600 via the communication unit 705 and the Internet 20.

Next, the control unit 703 receives character data from the server apparatus 600 via the Internet 20 and the communication unit 705, and outputs the received character data to the memory card 300 via the memory card input/output Unit 704.

(3) Memory Card Input/Output Unit 704

When the memory card 300 is loaded to the convenience-store terminal 700, the memory card input/output unit 704 is connected to the memory card 300, and by being controlled by the control unit 703, reads information from the memory card 300 and outputs the read information to the control unit 703, or receives information from the control unit 703 and outputs the received information to the memory card 300.

(4) Communication Unit 705

The communication unit 705 is connected to the server apparatus 600 via the Internet 20, and transmits/receives information to/from the server apparatus 600 via the Internet 20.

(5) Cash Receiving Unit 706 and Storage 707

The cash receiving unit 706 receives cash in an amount corresponding to the sales price of the game selected by the user, and outputs receipt information indicating the receipt of the cash, to the control unit 703.

The storage 707 stores the cash received by the cash receiving unit 706.

1.9 Operations of Game System 10

The following describes operations of the game system 10.

(1) Operations of Stationary Game Apparatus 100

The following describes operations performed by the stationary game apparatus 100, with use of the flowchart of FIG. 33.

When a user turns on the power to the stationary game apparatus 100, the main control unit 108 generates a menu screen 160, and the monitor 120 displays the generated menu screen 160 (Step S501).

When the user selects one of the alternatives included in the menu screen 160, the main.control unit 108 receives instruction information corresponding to the selected alternative, from the operation controller 122 via the controller control unit 101 (Step S502).

When the received instruction information indicates display of a title list (Step S503), the main control unit 108 reads a plurality of game titles from the DVD 500 and from the large-capacity storage unit 111, via the drive unit 103 (Step S504), generates a list of game titles which is constituted by the read game titles, and then the monitor 120 displays the list of game titles (Step S505).

When the user selects one of the game titles, the main control unit 108 obtains a game identifier corresponding to the selected game title, from the operation controller 122 via the controller control unit 101 (Step S506).

Next, the main control unit 108 controls the authentication unit 107 to perform apparatus authentication with the memory card 300, and the authentication unit 107 performs the apparatus authentication (Step S507). In success of the apparatus authentication (Step S508), the main control unit 108 performs game processing (Step S509). Next, the control returns to Step S501, to repeat the processing. In failure of the apparatus authentication (Step S508), the game processing there after is not performed, and the control returns to Step S501 to repeat the processing.

When the main control unit 108 obtains, from the server apparatus 600, instruction information indicating to obtain character data and to write the character data to the memory card 300 (Step S503), the main control unit 108 performs processing for obtaining the character data at the stationary game apparatus 100 (Step S510) and returns to Step S501 to repeat the processing.

When receiving information indicating one of the other processing instructions (Step S503), the main control unit 108 performs the processing indicated by the received information (Step S512), and returns to Step S501 to repeat the processing.

(2) Game Processing by Stationary Game Apparatus 100

The following describes game processing performed by the stationary game apparatus 100, using the flowchart of FIG. 34. Note that the operations described below are the greater details of Steps 509 of the flowchart shown in FIG. 33.

The main control unit 108, from the DVD 500, reads a stationary game program 511, writes the stationary game program 511 to the main storage unit 110 (Step S531), reads an object data unit 541, writes the object data unit 541 to the graphics storage unit 114 (step S532), reads a stationary character processing program 551, writes the stationary character processing program 551 to the graphics storage unit 114 (Step S533), reads a stationary development item table 561, and writes the stationary development item table 561 to the main storage unit 110 (Step S534). In addition, the main control unit 108 reads character data 321, a resumption stage No. 335 and a resumption step No. 336, from the memory card 300, writes the character data, the resumption stage No. 335, and the resumption step No. 336 to the main storage unit 110, and writes-the height and the weight included in the read character data 321, to the graphics storage unit 114 (Step S535).

Next, the main control unit 108 fetches the instructions one by one, from the program unit of the stationary game program stored in the main storage unit 110 (Step S536), decodes the fetched instructions (Step S537), and executes the decoded instructions (Step S538). Hereinafter, the control returns to Step S536, thereby repeating the fetching, the decoding, and the executing of instruction.

(3) Obtaining Operation of Character Data Performed by Stationary Game Apparatus 100

The following describes operations performed by the stationary game apparatus 100 in obtaining character data from the server apparatus 600 and writing the character data to the memory card 300, using the flowcharts of FIGS. 35-36. Note that the operations described below are the greater details of Step S510 of the flowchart shown in FIG. 33.

Upon reception of instruction information indicating to obtain character data from the server apparatus 600 and to write the character data to the memory card 300 (Step S601), the main control unit 108 reads a user ID from the memory card 300 via the memory card input/output unit 102 (Step S602), reads a game identifier BID and a public key BPK from the DVD 500 via the drive unit 103 (Step S603), and then using the read public key BPK, performs a digital signature SIG on the game identifier BID and the user ID, thereby generating signature data (Step S604), and then transmits the user ID, the game identifier BID, and the signature data to the server apparatus 600 via the communication unit 104 and the Internet 20 (Step S605).

The control unit 602 receives the user ID, the game identifier BID, and the signature data from the stationary game apparatus 100 via the Internet 20 and the communication unit 605 (Step S605), and reads a secret key corresponding to the received game identifier BID, from the game information table 621 that the information storage unit 601 owns (Step S606), and using the read secret key, performs a digital signature verification “VRFY” on the game identifier BID, the user ID, and the signature data, thereby obtaining a verification result (Step S607). Next, the control unit 602 transmits the verification result, obtained by the digital signature verification “VRFY”, to the stationary game apparatus 100 via the communication unit 605 and the Internet 20 (Steps S609, S610). When the verification result indicates a failure (Step S608), the control unit 602 does not perform the processing there after.

In addition, the control unit 108 receives the verification result of the digital verification from the server apparatus 600 via the Internet 20 and the communication unit 104 (Step S609, Step S610). When the received verification result indicates a failure (Step S611), the main control unit 108 generates a display screen displaying a message indicating such, writes the generated display screen to the frame buffer 106 as a frame image, outputs, to the graphics control unit 113, a control signal indicating that an instruction has been written to the register unit 109, writes a screen display instruction to the register R0 151 of the register unit 109, and the monitor 120 displays the frame image (Step S612), then the processing is ended.

When the received verification result indicates a success (Step S611), the main control unit 108 transmits a communication instruction to the server apparatus 600 via the communication unit 104 and the Internet 20, so that the server apparatus 600 communicates with the memory card 300 (Step S613), and also outputs a communication instruction to the memory card 300 via the memory card input/output unit 102, so that the memory card 300 communicates with the server apparatus 600 (Step S614).

When the verification result indicates a success (Step S608), the control unit 602 receives a communication instruction from the stationary game apparatus 100 via the Internet 20 and the communication unit 605 (Step S613), and the server apparatus 600 and the memory card 300 perform mutual apparatus authentication (Step S615).

The control unit 302 receives a result of the apparatus authentication from the authentication unit 304, and outputs the received result to the stationary game apparatus 100 via the input/output unit 303 (Step S617). When the result of the apparatus authentication indicates a failure (Step S619), the control unit 302 ends the processing.

Next, the main control unit 108 receives the result of the apparatus authentication between the server apparatus 600 and the memory card 300, from the server apparatus 600 via the Internet 20 and the communication unit 104 (Step S616), and also receives the result of the apparatus authentication between the server apparatus 600 and the memory card 300, from the memory card 300 via the memory card input/output unit 102 (Step S617). When at least one of the received results indicates a failure in the apparatus authentication (Step S620), the main control unit 108 generates a display screen displaying a message indicating such, writes the generated display screen to the frame buffer 106 as a frame image, outputs, to the graphics control unit 113, a control signal indicating that an instruction has been written to the register unit 109, writes a screen display instruction to the register R0 151 of the register unit 109, and the monitor 120 displays the frame image (Step S621), and ends the processing.

The control unit 602 receives an authentication result from the authentication unit 606, and transmits the received authentication result to the stationary game apparatus 100 via the communication unit 605 and the Internet 20 (Step S616). Here, when the authentication result indicates a failure (Step S618), the control unit 602 does not perform the processing thereafter.

On the other hand, when the authentication result indicates a success (Step S618), the control unit 602 searches the user purchase information table 631 for the received user ID (Step S622), and when the received user ID does not exist in the user purchase information table 631 (Step S623), the control unit 602 transmits a search result indicating such to the stationary game apparatus 100 via the communication unit 605 and the Internet 20 (Step S624).

When both of the received results show a success in apparatus authentication (Step S621), the main control unit 108 receives the search result about the user ID, from the server apparatus 600 via the Internet 20 and the communication unit 104 (Step S624), and when the received search result indicates nonexistence of the user ID (Step S625), the main control unit 108 generates a display screen displaying a message indicating such, writes the generated display screen to the frame buffer 106 as a frame image, outputs, to the graphics control unit 113, a control signal indicating that an instruction has been written to the register unit 109, and writes a screen display instruction to the register R0 151 of the register unit 109, and the monitor 120 displays the frame image (Step S626). In addition, the main control unit 108 outputs the received search result to the memory card 300 via the memory card input/output unit 102 (Step S627), and then ends the processing.

When the result of the apparatus authentication indicates a success. (Step S619), and the received search result indicates nonexistence of the user ID (Step S628), the control unit 302 ends the processing.

When the received user ID exists in the user purchase information table 631 (Step S623), the control unit 602 reads, from the game information table 621, character data corresponding to the received game identifier (Step S629), and transmits the read character data to the stationary game apparatus 100 via the communication unit 605 and the Internet 20 (Step S630).

When the received search result shows existence of the user ID (Step S625), then the main control unit 108 receives character data from the server apparatus 600 via the Internet 20 and the communication unit 104 (Step S630), and outputs the received character data to the memory card 300 via the memory card input/output unit 102 (Step S631).

The control unit 302 receives the character data via the input/output unit 303 (Step S631), writes the received character data to the information storage unit 301 (Step S632), and when the writing has been complete, outputs completion information indicating the writing completion to the stationary game apparatus 100 via the input/output unit 303 (Step S633).

The main control unit 108 receives the completion information indicating the writing completion of the character data, from the memory card 300 via the memory card input/output unit 102 (Step S633), and transmits the received completion information to the server apparatus 600 via the communication unit 104 and the Internet 20 (Step S634).

Next, the control unit 602 receives the completion information indicating the writing completion of the character data to the memory card 300, from the stationary game apparatus 100 via the Internet 20 and the communication unit 605 (Step S634), and performs billing processing directed to a user that the user ID identifies (Step S635).

(4) Obtaining Operations of Character Data Performed by Portable Game Apparatus 200

The following describes operations performed by the portable game apparatus 200 in obtaining character data from the server apparatus 600 via the Internet 20 and the stationary game apparatus 100, and writing the character data to the memory card 300, using the flowcharts of FIGS. 37-38.

The operations performed by the portable game apparatus 200 in obtaining character data are almost the same as the operations performed by the stationary game apparatus 100 in obtaining character data shown in the flowcharts of FIGS. 35-36, and so detailed explanation is omitted in the following.

The operations performed by the stationary game apparatus 100 explained in the flowcharts of FIGS. 35-36 are replaced by the operations performed by the portable game apparatus 200 in the flowcharts of FIGS. 37-38. The portable game apparatus 200 obtains character data from the server apparatus 600 via the stationary game apparatus 100.

Comparing the flowcharts of FIGS. 37-38 with the flowcharts of FIGS. 35-36, steps assigned reference signs having the identical 4 highest-order characters correspond to each other (e.g. “S601”).

(5) Game Processing by Portable Game Apparatus 200

The following describes game processing performed by the portable game apparatus 200, using the flowchart of FIG. 39.

The authentication unit 212 performs mutual apparatus authentication with the memory card 300 (Step S701). In failure of the apparatus authentication (Step S702), the portable game apparatus 200 does not perform the game processing thereafter.

In success of the apparatus authentication (Step S702), the main control unit 208, from the cartridge 400 , reads a portable game program 411, writes the read portable game program 411 to the main storage unit 210 (Step S703), reads a portable character processing program 451, writes the read portable character processing program 451 to the main storage unit 210 (Step S705), reads the portable development item table 461, writes the read portable development item table 461 to the main storage unit 210 (Step S706). In addition, the main control unit 208 reads character data 321, a resumption stage No. 335 and a resumption step No. 336 from the memory card 300, and writes the character data, the resumption stage No. 335 and the resumption step No. 336, to the main storage unit 210 (Step S707).

Next, the main control unit 208 fetches the instructions one by one,from the program unit of the portable game program stored in them a in storage unit 210 (Step S708), decodes the fetched instructions (Step S709), and executes the decoded instructions (Step S710). Hereinafter, the main control unit 208 returns to Step S708, thereby repeating the fetching, the decoding, and the executing of instruction.

(6) Obtaining Operation of Character Data Performed by Convenience-Store Terminal 700

The following describes operations performed by the convenience-store terminal 700 in obtaining character data from the server apparatus 600 via the Internet 20 and writing the character data to the memory card 300, using the flowchart of FIG. 40.

The control unit 703 receives, from the input unit 702, instruction information indicating to obtain character data from the server apparatus 600 (Step S801), transmits authentication instruction indicating to perform mutual apparatus authentication between the memory card 300 and the server apparatus 600, to the server apparatus 600 via the communication unit 705 and the Internet 20 (Step S802), and outputs the authentication instruction to the memory card 300 via the memory card input/output unit 704 (Step. S803).

The server apparatus 600 and the memory card 300 perform mutual apparatus authentication (Step S804).

The control unit 602 transmits an authentication result of the apparatus authentication to the convenience-store terminal 700 via the communication unit 605 and the Internet 20 (Step S805). When the authentication result indicates a failure (Step S807), the control unit 602 does not perform the processing there after.

In addition, the input/output unit 303 outputs the authentication result of the apparatus authentication to the convenience-store terminal 700 (Step S806). When the authentication result indicates a failure (Step S808), the control unit302 does notperform the processing there after.

When the authentication result indicates a success (Step S807), the control unit 602 reads all the game sales information from the game sales information table 641 (Step S809), and transmits the read game sales information to the convenience-store terminal 700 via the communication unit 605 and the Internet 20 (Step S810).

Next, the control unit 703 receives a result of apparatus authentication between the server apparatus 600 and the memory card 300, from the server apparatus 600 via the Internet 20 and the communication unit 705 (Step S805), and also receives a result of apparatus authentication between the server apparatus 600 and the memory card 300 (Step S806). When at least one of the received results indicates a failure in apparatus authentication (Step S820), the control unit 703 generates a display screen displaying a message indicating such, outputs the generated display screen to the display unit 701, and controls the display unit 701 to display the display screen (Step S821), and ends the processing.

When both of the received results show success in the apparatus authentication (Step S820), the control unit 703 receives game sales information from the server apparatus 600 via the Internet 20 and the communication unit 705 (Step S810), generates a game list using the received game sales information, outputs the generated game list to the display unit 701, and controls the display unit 701 to display the game list (Step S811).

Next, the control unit 703 receives a game identifier of a game selected by a user from the input unit 702 (Step S812), receives receipt information indicating receipt of cash corresponding to the selected game, from the cash receiving unit 706 (Step S813), and transmits the received game identifier to the server apparatus 600 via the communication unit 705 and the Internet 20 (Step S814).

Next, the control unit 602 receives the game identifier from the convenience-store terminal 700 via the Internet 20 and the communication unit 605 (Step S814), reads character data corresponding to the game identifier from the game information table 621 (Step S815), transmits the read character data to the convenience-store terminal 700 via the communication unit 605 and the Internet 20 (Step S816).

Next, the control unit 703 receives the character data from the server apparatus 600 via the Internet 20 and the communication unit 705 (Step S816), and outputs the received character data to the memory card 300 via the memory card input/output unit 704 (Step S817).

The control unit 302 receives the character data from the convenience-store terminal 700 via the input/output unit 303 (Step S817), and writes the received character data to the information storage unit 301 (Step S818).

2. SUMMARY

As described so far, the stationary game apparatus and the portable game apparatus of the present invention save their own game software program, and the game software program is provided for a user by being stored in a recording medium suitable for a corresponding game apparatus.

In addition, character data representing characteristics of a character appearing in a game, such as form and competence in the game, is stored in a memory card.

The stationary game apparatus and the portable game apparatus respectively read a game software program from their own recording medium, reads character data from the memory card, so as to proceed with the game according to the corresponding game software program. In the game proceeding, the character appearing in the game is made to have form and competence represented by the character data read from the memory card.

In this way, the same character can be made appear in the course of the same game, in both of a stationary game apparatus and a portable game apparatus having different specification with each other in various aspects such as system architecture, type and number of internal processors, and display competence of screen.

In the course of a game, the form and competence of a character varies in various ways.

For example, when a user suspends a game at a stationary game apparatus, in the middle of a process of the game, the stationary game apparatus stores to a memory card characteristics of the character such as competence and form, together with information indicating a time at which the game was suspended. When the user resumes the game on a portable game apparatus, the portable game apparatus reads from the memory card the characteristics of the character such as competence and form, together with the information indicating the time at which the game was suspended, and proceeds with the game by making the character appear, who has the competence and the form at the time at which the game was suspended, and vice visa.

In this way, a user can proceed with a game in one of a stationary game apparatus and a portable game apparatus, and after suspension, he can proceed with the same game in the other game apparatus. 3. OTHER MODIFICATION EXAMPLES

So far, the present invention has been described based on the embodiment. However needless to say, the present invention should not be limited to the above-described embodiment, and include the following cases.

(1) As a modification example of the game system 10, a game system 10 a may be comprised of a stationary game apparatus 100 a, a portable game apparatus 200 a, a memory card 300 a, a cartridge 400 a, a DVD 500 a, a server apparatus 600 a, and a convenience-store terminal 700 a.

In the game system 10 a, the following structure is possible. That is, when character data is obtained from the server apparatus 600 a and is written to the memory card 300 a, the server apparatus 600 a encrypts the character data thereby generating encrypted character data, transmits the encrypted character data. In response, the memory card 300 a receives the encrypted character data, decrypts the received encrypted character data thereby generating character data, and memorizes the generated character data.

The stationary game apparatus 100 a, the portable game apparatus 200 a, the memory card 300 a, the cartridge 400 a, the DVD 500 a, the server apparatus 600 a, and the convenience-store terminal 700 a respectively have a similar structure as the counterparts in the game system 10, namely, the stationary game apparatus 100, the portable game apparatus 200, the memory card 300, the cartridge 400, the DVD 500, the server apparatus 600, and the convenience-store terminal 700. The following description focuses the difference therebetween.

The server apparatus 600 a further includes an encryption unit, and stores therein a character key associated with character data. The memory card 300 a further includes an encryption unit. The DVD 500 a further stores therein medium-unique information that is unique to the DVD. The cartridge 400 a further stores therein cartridge-unique information that is unique to the cartridge. Here, the medium-unique information and the cartridge-unique information are respectively stored in areas to which overwriting is impossible.

(a) The following describes operations performed in obtaining character data from the server apparatus 600 a via the stationary game apparatus 100 a and writing it in the memory card 300 a, using FIG. 41.

The server apparatus 600 a obtains medium-unique information from the DVD 500 a (Step S851), performs an encryption algorithm E2 on a character key using the obtained medium-unique information as a key thereby generating an encrypted character key (Step S853), and transmits the encrypted character key to the memory card 300 a via the stationary game apparatus 100 a (Step S855).

In addition, the server apparatus 600 a performs an encryption algorithm E1 on the character data using the character key as a key thereby generating encrypted character data (Step S852), and transmits the encrypted character data to the memory card 300 a via the stationary game apparatus 100 a (Step S854).

The memory card 300 a receives the encrypted character data from the server apparatus 600 a via the stationary game apparatus 100 a (Step S854), and receives the encrypted character key (Step S855).

The memory card 300 a obtains medium-unique information from the DVD 500 a via the stationary game apparatus 100 a (Step S856), performs a decryption algorithm D2 on the encrypted character key using the obtained medium-unique information as a key, thereby generating a character key (Step S857). Next, the memory card 300 a performs a decryption algorithm D1 on the encrypted character data using the generated character key as a key, thereby generating character data, and memorizes the generated character data inside (Step S858).

When executing a program, the memory card 300 a outputs the character data stored therein, to the stationary game apparatus 100 a (Step S859).

Here, one example of the encryption algorithm E1 is an elliptic curve encryption whose security is based on the discrete logarithm problem. In addition, the decryption algorithm D1 is an algorithm for decrypting a cipher text generated by the encryption algorithm E1.

In addition, one example of the encryption algorithm E2 is based on DES (data encryption standard). In addition, the decryption algorithm D2 is an algorithm for decrypting a cipher text generated by the encryption algorithm E2.

(b) The following describes operations performed in obtaining character data from the server apparatus 600 a via the stationary game apparatus 100 a and the portable apparatus 200 a and writing it in the memory card 300 a, using FIG. 42.

The server apparatus 600 a obtains cartridge-unique information from the cartridge 400 a (Step S861), and performs the encryption algorithm E2 on the character key using the obtained cartridge-unique information as a key thereby generating an encrypted character key (Step S863), and transmits the encrypted character key to the memory card 300 a via the stationary game apparatus 100 a and the portable game apparatus 200 a (Step S865).

In addition, the server apparatus 600 a performs the encryption algorithm E1 on character data using a character key as a key thereby generating encrypted character data (Step S862), and transmits the encrypted character data to the memory card 300 a via the stationary game apparatus 100 a and the portable game apparatus 200 a (Step S864).

The memory card 300 a obtains the encrypted character data from the server apparatus 600 a via the stationary game apparatus 100 a and the portable game apparatus 200 a (Step S864), and receives the encrypted character key (Step S865).

The memory card 300 a obtains cartridge-unique information from the cartridge 400 a via the portable game apparatus 200 a (Step S866), and performs a decryption algorithm D2 on the encrypted character key using the cartridge-unique information as a key, thereby generating a character key (Step S867). Next, the memory card 300 a performs a decryption algorithm D1 on the encrypted character data using the generated character key as a key, thereby generating character data, and memorizes the character data inside (Step S868).

In executing a game, the memory card 300 a outputs the character data memorized therein to the portable game apparatus 200 a (Step S869).

(c) According to the above-described modification example, without the DVD 500 a or the cartridge 400 a, the encrypted character key cannot be decrypted, and so the encrypted character data cannot be decrypted either.

Therefore the security in transmission of character data is enhanced.

(2) In the embodiment, when the memory card 300 obtains character data from the server apparatus 600, the server apparatus 600 performs billing processing directed to the user for the amount of money corresponding to the provided character data. However the memory card 300 may further has an electronic money function, receive billing information relating to the amount of money from the server apparatus 600, and perform billing processing within the memory card 300 based on the received billing information.

The memory card 300 stores therein a secret key of itself and electronic money that can be used in place of currency, in the area to which external access is prohibited. In addition, the memory card 300 prestores a billing source ID that identifies the server apparatus 600. Furthermore, the server apparatus 600 prestores a public key that corresponds to the secret key of the memory card 300, and also prestores a billing source ID that identifies itself.

The following describes billing processing performed between the server apparatus 600 and the memory card 300, using the flowchart of FIG. 43. Note that the billing processing explained here is an alternative of Step S635 in the flowchart of FIG. 36.

The server apparatus 600 calculates the billing amount (Step S872), obtains a billing source ID that identifies the server apparatus 600 (Step S872), performs a digital signature SIG on the billing amount and the billing source ID using the public key of the memory card 300 obtained in advance, thereby generating signature data (Step S873), and transmits the billing amount, the billing source ID, and the signature data to the memory card 300 via the Internet 20 and the stationary game apparatus 100 (Step S874-Step S875).

The memory card 300 performs a verification VRFY of the digital signature on the billing amount, the billing source ID, and the signature data, using the secret key that the memory card 300 prestores therein (Step S876).

When the verification result indicates a failure (Step S877), the memory card 300 transmits failure information indicating the verification failure to the server apparatus 600 via the stationary game apparatus 100 and the Internet 20 (Step S878-Step S879).

When the verification result indicates a success (Step S877), the memory card 300 further judges whether the prestored billing source ID is in accordance with the received billing source ID, and when they are not in accordance with each other (Step S880), failure information indicating such is transmitted to the server apparatus 600 via the stationary game apparatus 100 and the Internet 20 (Step S882-Step S883).

When they are in accordance with each other (Step S880), the memory card 300 subtracts the received billing amount from the electronic money stored inside (Step S881).

(3) In the above-described embodiment, the game system includes a stationary game apparatus and a portable game apparatus. However the game system may include a personal computer instead of a stationary game apparatus, and a portable information terminal apparatus and a portable phone instead of a portable game apparatus. In such a case, the personal computer will be designed to have the same structure as the stationary game apparatus, and the portable information terminal apparatus and the portable phone will be designed to have the same structure as the portable game apparatus.

In addition, in the above-described embodiment, the game system includes a stationary game apparatus and a portable game apparatus. However, the game system may include another stationary game apparatus instead of the portable game apparatus, which is has a different internal structure from the stationary game apparatus.

(4) In the above-described embodiment, the game system includes a stationary game apparatus and a portable game apparatus. However the game system may include: a game apparatus A produced by a maker A, instead of the stationary game apparatus; and a game apparatus B produced by a maker B, instead of the portable game apparatus.

Here, the game apparatus A and the game apparatus B are assumed to differ in many aspects such as system architecture, type and number of internal processor, and display competence of screens. For example, the game apparatus A is assumed to have the same structure as the stationary game apparatus of the above-described embodiment, and the game apparatus B is assumed to have the same structure as the portable game apparatus of the above-described embodiment.

Also in such a case, each of the game apparatuses can save the same character appear in the course of procedure of the same game, just as in the embodiment.

(5) In the above-described embodiment, the character data indicating the characteristics of the character changes in the course of the game. When the game is suspended, the character data after changed is written to the memory card. However it is alternatively possible to write, to the memory card, only the difference between the character data in initial state and in changed state.

(6) Each game software program may be structured so that degree of change in character data varies for different game apparatuses.

For example, the following arrangements are possible. That is, the weight flag is set to be ON for both of the stationary development item table and the portable development item table, and that the stationary main program includes an instruction for increasing the weight by “1.0” at Step S118 of FIGS. 9-10. Still, the portable main program includes an instruction for increasing the weight by “0.5” as originally shown by Step S418 of FIGS. 25-26.

With the above arrangement, the degree of character development can be changed according to a type of game apparatuses, by changing the degree of character data for each game apparatus.

In addition the stationary development item table and the portable development item table may include the degree of change for character data.

Specifically, the following arrangement is possible. In the stationary development item table, the weight flag and a degree 1.0 indicating the change in weight of a character are associated with each other. The stationary main program reads the degree 1.0 indicating a degree of change for weight for a character at Step S118 of FIGS. 9-10, and includes therein an instruction for increasing the weight by the read degree 1.0.

In addition, it is possible to have a plurality of characters appear in a game, and each character has its own development item table, and a plurality of development item tables are to be stored in a DVD or in a cartridge.

(7) In the above-described embodiment, each of the stationary development item table and the portable development item table is structured to be prestored in the DVD 500 or the cartridge 400. However, these tables may not be prestored in the DVD 500 or in the cartridge 400, and is written to the memory card 300 when they are to be used, as in the following way.

First, the server apparatus 600 prestores the stationary development item table and the portable development item table, in association with game software.

The memory card 300 obtains the stationary development item table and the portable development item table from the server apparatus 600 in one of the following route: via the stationary game apparatus 100 and the Internet 20; via the portable game apparatus 200, the stationary game apparatus 100, and the Internet 20; and via the convenience-store terminal 700 and the Internet 20. Then the memory card 300 stores therein the stationary development item table and the portable development item table.

The stationary game apparatus 100 reads the stationary development item table from the memory card 300 for use, and the portable game apparatus 200 reads the portable development item table for use.

Here, the stationary game apparatus 100 and the portable game apparatus 200 may be arranged to overwrite a respective one of the stationary development item table and the portable development item table stored in the memory card 300, according to an operation instruction of a user.

When a plurality of characters appear in a game and there are a plurality of development item tables for a plurality of characters respectively, it is possible that some of the development item tables are prestored either in a DVD or a cartridge, and the other development item tables are obtained from a server apparatus and stored into a memory card.

(8) In the above-described embodiment, the stationary development item table and the portable development item table are respectively stored in the DVD 500 and the cartridge 400, and the stationary game apparatus 100 reads the stationary development item table from the DVD 500 for use, and the portable game apparatus 200 reads the portable development item table from the cartridge 400 for use. However, it is also possible that these tables are written in the memory card 300 for use, as described below.

The memory card 300 obtains either the stationary development item table or the portable development item table from the DVD 500 or from the cartridge 400, via the stationary game apparatus 100 or via the portable game apparatus 200, and stores the obtained stationary development item table and portable development item table.

Hereafter, the stationary game apparatus 100 reads the stationary development item table from the memory card 300 for use, and the portable game apparatus 200 reads the portable development item table from the memory card 300 for use.

Here, the stationary game apparatus 100 and the portable game apparatus 200 may respectively overwrite the stationary development item table and the portable development item table stored in the memory card 300, according to an operation instruction by a user.

(9) The present invention may be any of the methods described above. The present invention may also be a computer program realized by performing these methods on a computer, or a digital signal comprised of the computer program.

Furthermore, the present invention may be the computer program or the digital signal in a form recorded on a computer-readable recording medium, such as a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD-ROM, a DVD-RAM, a BD (Blu-ray Disc), and a semiconductor memory. In addition, the present invention may be the computer program or the digital signal recorded in these recording media.

In addition, the present invention may be the computer program or the digital signal transmitted via an electric communication circuit, wireless/wired communication circuits, a network represented by the Internet, a data broadcast, and the like.

In addition, the present invention may be a computer system equipped with a microprocessor and a memory, where the memory stores therein the computer program and the microprocessor operates according to the computer program.

In addition, the present invention may be executed on another independent computer system by transmitting the program or the digital signal in a form recorded in any of the recording media, or by transmitting the program or the digital signal via the network, etc.

(10) The present invention may be a combination of any of the embodiment and the modification examples.

INDUSTRIAL APPLICATION

The present invention is applicable managerially, continually, and repeatedly, in an industry providing users with computer game software, and in an industry that produces and sells a stationary game apparatus, a portable game apparatus, and a computer system that can execute computer game software. 

1. A game system comprising a first game execution apparatus and a second game execution apparatus that have a different internal structure from each other, wherein the first game execution apparatus includes: a first program reading unit operable to read, from a first game recording medium, a first game program that indicates a procedure of a game; a first character reading unit operable to read, from a portable recording medium, character data that indicates a characteristic of a character that appears in the game; a first input unit operable to receive an inputting operation from a user; and a first game execution unit operable to proceed with the game according to the inputting operation received at the first input unit and the procedure indicated by the first game program, and make the character appear in the game in accordance with the character data read by the first character reading unit, and the second game execution apparatus includes: a second program reading unit operable to read, from a second game recording medium, a second game program that indicates the procedure of the game; a second character reading unit operable to read the character data from the portable recording medium; a second input unit operable to receive an inputting operation from the user; and a second game execution unit operable to proceed with the game according to the inputting operation received at the second input unit and the procedure indicated by the second game program, and make the character appear in the game in accordance with the character data read by the second character reading unit.
 2. A game execution apparatus that proceeds with a game according to a game program, comprising: a program reading unit operable to read, from a game recording medium, a game program that indicates a procedure of a game; a character reading unit operable to read, from a portable recording medium, character data that indicates a characteristic of a character that appears in the game; an input unit operable to receive an inputting operation from a user; and a game execution unit operable to proceed with the game according to the inputting operation and the procedure, and make the character appear in the game in accordance with the character data.
 3. The game execution apparatus of claim 2, further comprising: a request unit operable to request the character data from a server apparatus; an obtaining unit operable to obtain the character data from the server apparatus via a network; and a writing unit operable to write the obtained character data to the portable recording medium.
 4. The game execution apparatus of claim 2, further comprising: an authentication unit operable to check authenticity of the portable recording medium, wherein the character reading unit reads the character data when the authenticity has been ensured.
 5. The game execution apparatus of claim 2, wherein the game recording medium further stores therein permission information that indicates whether change is permissible on the character's characteristic, the character reading unit further reads the permission information from the game recording medium, and the game execution unit, when the read permission information indicates affirmatively, changes the character's characteristic as the game proceeds, and prohibits the character's characteristic from being changed when the read permission information indicates negatively.
 6. The game execution apparatus of claim 5, further comprising: a character writing unit operable to, when the game execution unit changes the character's characteristic, overwrite the character data in the portable recording medium with after-change character data that indicates a characteristic of the character after changed, wherein the character reading unit further reads the after-change character data from the portable recording medium, and the game execution unit changes the character's characteristic as the game proceeds, in accordance with the read after-change character data.
 7. The game execution apparatus of claim 5, further comprising: a writing unit operable to write the read permission information to the portable recording medium.
 8. The game execution apparatus of claim 5, wherein the game recording medium further stores therein a degree of change allowed on the character, in association with the permission information, and the game execution unit changes the character's characteristic as the game proceeds, in accordance with the degree of change stored in the game recording medium.
 9. A portable recording medium comprising: a storage unit that stores therein character data that indicates a characteristic of a character that appears in a game; an authentication unit operable to check authenticity of a game execution apparatus; and an output unit operable to, when the authenticity has been ensured, read the character data from the storage unit and output the read character data to the game execution apparatus.
 10. A game execution method used by a game execution apparatus that proceeds with a game according to a game program that indicates a procedure of the game, the game execution method comprising: a program reading step of reading, from a game recording medium, a game program that indicates a procedure of a game; a character reading step of reading, from a portable recording medium, character data that indicates a characteristic of a character that appears in the game; an input step of receiving an inputting operation from a user; and a game execution step of proceeding with the game according to the inputting operation and the procedure, and making the character appear in the game in accordance with the character data.
 11. A game execution program used by a game execution apparatus that proceeds with a game according to a game program that indicates a procedure of the game, the game execution program have the game execution apparatus to execute: a program reading step of reading, from a game recording medium, a game program that indicates a procedure of a game; a character reading step of reading, from a portable recording medium, character data that indicates a characteristic of a character that appears in the game; an input step of receiving an inputting operation from a user; and a game execution step of proceeding with the game recording to the inputting operation and the procedure, and making the character appear in the game in accordance with the character data.
 12. The game execution program of claim 11, further having the game execution apparatus to execute: a request step of requesting the character data from server apparatus; an obtaining step of obtaining the character data from the server apparatus via a network; and a writing step of writing the obtained character data to the portable recording medium.
 13. The game execution program of claim 12, being recorded in a computer-readable recording medium.
 14. A computer-readable recording medium that stores therein a game execution program used by a game execution apparatus that proceeds with a game according to a game program, the game program indicating a procedure of the game, wherein the game execution program has the game execution apparatus to execute: a program reading step of reading, from a game recording medium, a game program that indicates a procedure of a game; a character reading step of reading, from a portable recording medium, character data that indicates a characteristic of a character that appears in the game; an input step of receiving an inputting operation from a user; and a game execution step of proceeding with the game according to the inputting operation and the procedure, and making the character appear in the game in accordance with the character data. 